未包装的标签仍然存在

Unwrapped tags are still there

我想删除给定标签(节点)下的 scriptnoscript 标签。

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()