我有一个作为网络蜘蛛运行的Python(3.6)脚本。它抓取页面的内容,提取链接并抓取它们。它使用lxml.html
来处理链接,使用
from lxml import html
我正在尝试为运行时遇到的每个错误创建自定义响应。我目前正在处理Unicode,SSL,Redirect,Connection和ContentDecode错误。我经常遇到lxml.etree.XMLSyntaxError
和lxml.etree.XMLParseError
。我尝试通过except-blocks传递它们,但是当它遇到NameError: name 'lxml' is not defined
时它总是停止,因为我只导入lxml.html
而不是整个模块。
有没有办法在不导入整个模块的情况下捕获错误?
答案 0 :(得分:0)
您可以通过etree.(Error)
访问lxml错误,即。 etree.XMLSyntaxError
和etree.ParseError
。
from lxml import etree
lxml还有a nice page详细说明etree
模块中的每个对象。