我有一些随机的 HTML,我使用 BeautifulSoup 来解析它,但在大多数情况下 (>70%) 它会令人窒息。我尝试使用Beautiful soup 3.0.8和3.2.0(3.1.0以上有一些问题),但结果几乎相同。
我可以从我的脑海中回忆起 Python 中可用的几个 HTML 解析器选项:
我打算测试所有这些,但我想知道您的测试中哪一个最宽容,甚至可以尝试解析错误的 HTML。
他们都是。我还没有遇到过任何 lxml.html 无法解析的 html 页面。如果您尝试解析的页面上存在 lxml barfs,您始终可以使用一些正则表达式对它们进行预处理,以使 lxml 满意。
lxml 本身相当严格,但是lxml.html
是一个不同的解析器,可以处理非常损坏的 html。对于极其糟糕的 html,lxml 还附带lxml.html.soupparser
它与 BeautifulSoup 库交互。
这里描述了使用 lxml.html 解析损坏的 html 的一些方法:http://lxml.de/elementsoup.html http://lxml.de/elementsoup.html
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)