最好用python lib来清理标记(不安全),并保留我认为不安全的标记

2024-09-24 22:28:57 发布

您现在位置:Python中文网/ 问答频道 /正文

例:我想清除“脚本”标签,但我想保留“a”标签

所以你用什么来做这个。你知道吗

我使用jquerycleditor作为所见即所得的HTML编辑器,它能自动为我做到这一点吗?你知道吗

谢谢


Tags: 脚本html标签编辑器jquerycleditor
3条回答

我想BeautifulSoup应该能做到。你知道吗

事实上,这里有一个问题+答案正是关于这个:Python HTML sanitizer / scrubber / filter

我必须为我的一个项目自动完成这个任务。我找到的解决方案是使用Beautiful Soup模块来提取脚本标记(我也为样式和表单这样做)。你知道吗

soup = BeautifulSoup(html_string, convertEntities=BeautifulSoup.HTML_ENTITIES)

scripts = soup.findAll('script')   # find and return a list of 'script' entities
for s in scripts:
    s.extract()   # remove it from the DOM completely

然后,您可以打印出BeautifulSoup或保存html。你知道吗

另一个为消毒而设计的选项是html5lib。你知道吗

无论你做什么,都不要依赖编辑器组件来完成:它运行在客户端上,因此很容易被操纵来提交无效或恶意的HTML!你知道吗

相关问题 更多 >