2024-05-14 03:34:31 发布
网友
我想从一个字符串中除去除我指定的一些之外的所有html标记。 如果我使用默认值调用构造函数,则一切正常:
>>> cleaner = lxml.html.clean.Cleaner() >>> cleaner.clean_html('''<i>italic</i><script>alert('');</script>''') '<span><i>italic</i></span>'
但是当我试图指定一些标记时,事情就不起作用了:
我做错什么了?在
作为一种解决方法,您可以将span和div标记添加到allowed_tags。在
span
div
allowed_tags
升级版
通过调用fromstring,将lxml.html.Cleanertries to convert字符串添加到html树中,它检查文档是否有根节点,并在必要时添加它。所以你需要允许^{} and ^{} tags
lxml.html.Cleaner
好像是只虫子。我在lxml==2.3.3版本中没有看到它:
lxml==2.3.3
>>> from lxml.html import clean >>> clean.clean_html('''<i>italic</i><script>alert('');</script>''') '<span><i>italic</i></span>' >>> c = clean.Cleaner(allow_tags='is', remove_unknown_tags=False) >>> c.clean_html('''<i>italic</i><s>strike</s>''') '<div><i>italic</i><s>strike</s></div>'
作为一种解决方法,您可以将
span
和div
标记添加到allowed_tags
。在升级版
通过调用fromstring,将} and ^{} tags
lxml.html.Cleaner
tries to convert字符串添加到html树中,它检查文档是否有根节点,并在必要时添加它。所以你需要允许^{好像是只虫子。我在
lxml==2.3.3
版本中没有看到它:相关问题 更多 >
编程相关推荐