未包装的标签仍然存在
Unwrapped tags are still there
我想删除给定标签(节点)下的 script
和 noscript
标签。
for t in node.find_all(["script", "noscript"]):
t.unwrap()
for s in node.stripped_strings:
print s
但是上面的循环还是会打印出script
个标签的内容。
错在哪里?
您需要 extract()
method:
PageElement.extract()
removes a tag or string from the tree.
for t in node.find_all(["script", "noscript"]):
t.extract()
您使用了错误的方法,您可以使用 decompose()
方法来执行此操作,特别是如果您不需要 return 要删除的标签或字符串。
Tag.decompose() removes a tag from the tree, then completely destroys it and its contents.
for t in node.find_all(["script", "noscript"]):
t.decompose()
我想删除给定标签(节点)下的 script
和 noscript
标签。
for t in node.find_all(["script", "noscript"]):
t.unwrap()
for s in node.stripped_strings:
print s
但是上面的循环还是会打印出script
个标签的内容。
错在哪里?
您需要 extract()
method:
PageElement.extract()
removes a tag or string from the tree.
for t in node.find_all(["script", "noscript"]):
t.extract()
您使用了错误的方法,您可以使用 decompose()
方法来执行此操作,特别是如果您不需要 return 要删除的标签或字符串。
Tag.decompose() removes a tag from the tree, then completely destroys it and its contents.
for t in node.find_all(["script", "noscript"]):
t.decompose()