私はscript
とnoscript
タグを特定のタグ(ノード)の下に削除したいと思います。まだラップされていないタグはまだあります
for t in node.find_all(["script", "noscript"]):
t.unwrap()
for s in node.stripped_strings:
print s
しかし、上記のループでは、まだscript
タグの内容が出力されます。
障害はどこですか?
私はscript
とnoscript
タグを特定のタグ(ノード)の下に削除したいと思います。まだラップされていないタグはまだあります
for t in node.find_all(["script", "noscript"]):
t.unwrap()
for s in node.stripped_strings:
print s
しかし、上記のループでは、まだscript
タグの内容が出力されます。
障害はどこですか?
あなたは、あなたが削除したいタグや文字列を返す必要はありません場合は特に、これを行うにはdecompose()
メソッドを使用することができ、間違った方法を使用しています。
Tag.decompose()は、タグをツリーから削除し、タグとその内容を完全に破棄します。
for t in node.find_all(["script", "noscript"]):
t.decompose()
あなたが代わりにextract()
methodが必要になります。
PageElement.extract()
は、ツリーからタグや文字列を削除します。
for t in node.find_all(["script", "noscript"]):
t.extract()