【问题标题】:python xml.dom parsing problemspython xml.dom解析问题
【发布时间】:2011-11-02 22:45:47
【问题描述】:

我正在编写一个程序,其中第一步获取URL 地址并打开页面。然后将内容放入xml.dom.minidom解析器:

from xml.dom.minidom import parse

page = urllib2.urlopen(page_url)
parser = parse(page)

问题是很多页面的标签和特殊字符不匹配,因此解析方法会引发错误。如果有任何<br> 而不是<br />,也会引发错误...

我试过这样:

from xml.dom.minidom import parseString

page = urllib2.urlopen(page_url)
data = ""
for line in page.readlines():
    data += str(line.replace("<br>", "<br />").replace(OTHER).replace...)
parser = parse(data)

但是,这不是一个好的解决方案。

那么,有没有对html代码中的标签不匹配和其他错误不那么敏感的库?

【问题讨论】:

    标签: python xml html-parsing


    【解决方案1】:

    我更喜欢lxml.html,它非常健壮,而lxml 总体来说速度非常快并且具有非常好的功能,包括XPath support

    import lxml.html
    
    doc = lxml.html.parse('http://example.com')
    

    【讨论】:

    • 不工作。 o 是的,lxml 没有 .html 包(它只有 lxml.parse)
    • 也许您使用的是旧版本? Because it certainly does.
    猜你喜欢
    • 1970-01-01
    • 2013-08-20
    • 2015-10-29
    • 2011-09-05
    • 1970-01-01
    • 2011-10-17
    • 2019-05-09
    • 1970-01-01
    相关资源
    最近更新 更多