yka*_*ich 5 python lxml libxml2
我正在使用 lxml 3.1.0 (使用 easy_install 安装),并看到奇怪的结果:
> from lxml.html.clean import clean_html
> clean_html("<html><body><h1>hi</h1></body></html>")
'<div><body><h1>hi</h1></body></div>'
Run Code Online (Sandbox Code Playgroud)
该html标签正在被替换为div。
示例 html 也会发生同样的情况,如下所示:http://lxml.de/lxmlhtml.html#cleaning-up-html
是什么赋予了?我是否遇到了 lxml 的错误,或者与 libxml2 版本不兼容,或者这是预期的?
我认为你需要一个Cleaner不受影响page_structure的:
>>> from lxml.html.clean import Cleaner
>>> cleaner = Cleaner(page_structure=False)
>>> cleaner.clean_html("<html><body><h1>hi</h1></body></html>")
'<html><body><h1>hi</h1></body></html>'
Run Code Online (Sandbox Code Playgroud)
如此处所述,page_structure是True默认情况。我怀疑您提供的网站上的文档不正确或已过时。
Edit#1:另一个确认这是预期行为的信息可以在源代码中的测试中找到。已提交拉取请求以更正文档。
Edit#2:自 2013 年 4 月 28 日起,拉取请求已合并到主控中。
| 归档时间: |
|
| 查看次数: |
3645 次 |
| 最近记录: |