lxml HTMLParser确实剥离了CDATA内容,而XHTMLParser没有

时间:2016-12-07 14:29:21

标签: python html xhtml lxml cdata

使用lxml-3.6.4,XHTMLParserHTMLParser与CDATA标记的行为不同 - XHTMLParser确实将其包含在文本中:

>>> from lxml import html
>>> content = '<div>regular content<![CDATA[, cdata content]]></div>'
>>> html.fragment_fromstring(content, parser=html.XHTMLParser()).text
'regular content, cdata content'

HTMLParser确实删除了它:

>>> html.fragment_fromstring(content, parser=html.HTMLParser()).text
'regular content'

为什么会发生这种情况,如何使用HTMLParser访问CDATA内容?

0 个答案:

没有答案