Python lxml:clean_html用div替换html标记?

Python lxml:clean_html用div替换html标记?,python,lxml,libxml2,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

我正在使用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>'
>从lxml.html.clean导入clean\u html
>清除html(“hi”)
“嗨”
html
标记将替换为
div

根据的示例html也会发生同样的情况


有什么好处?我是否遇到了lxml的错误,或者与libxml2的版本不兼容,或者这是意料之中的吗?

如果
页面结构=True
,则页面的结构部分(如
)将被删除,这是默认设置。要更改此设置,请执行以下操作:

import lxml.html.clean as clean
content = '<html><body><h1>hi</h1></body></html>'
cleaner = clean.Cleaner(page_structure=False)
cleaned = cleaner.clean_html(content)
print(cleaned)
# <html><body><h1>hi</h1></body></html>

我想你需要一个
清洁剂
,它可以让
页面结构保持独立:

>>> 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>' 
来自lxml.html.clean导入清理器的
>>
>>>cleaner=cleaner(页面结构=False)
>>>cleaner.clean_html(“hi”)
“嗨”
如上所述,默认情况下,
page\u结构
True
。我怀疑您提供的站点文档不正确或过时

编辑#1:可以在源代码的测试中找到这是预期行为的另一个确认。已提交一份文件以更正文件


编辑#2:自2013年4月28日起,已将合并到主文件中

不,我不认为这是预期的行为。。。你能发布一个更大的*代码片段吗?
>>> 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>'