如何在使用lxml解析HTML时保留命名空间信息?

>>> from lxml.etree import HTML,tostring
>>> tostring(HTML('<fb:like>'))
'<html><body><like/></body></html>'

请注意标记如何变为< fb:like>简单地< like>.

这使得将XFBML与lxml合并的处理页面变得更加困难. (同样的事情发生在< g:plusone>< / g:plusone>)

任何帮助表示赞赏.

解决方法

尝试添加缺少的名称空间前缀定义. lxml将是 avoid the namespaces otherwise,据说可以让你更轻松.

您尝试解析的网站很可能不包含这些命名空间定义,因此您应该添加它们.

像这样:xmlns:adlcp=”http://xxx/yy/zzz”

相关文章

vue阻止冒泡事件 阻止点击事件的执行 &lt;div @click=&a...
尝试过使用网友说的API接口获取 找到的都是失效了 暂时就使用...
后台我拿的数据是这样的格式: [ {id:1 , parentId: 0, name:...
JAVA下载文件防重复点击,防止多次下载请求,Cookie方式快速简...
Mip是什么意思以及作用有哪些