我在谈论HTTP错误,例如" 404 Not Found"。我阅读了文档,但没有找到任何可以帮助我的内容。
答案 0 :(得分:0)
Feedparser返回status
属性中的HTTP状态代码(如https://pythonhosted.org/feedparser/reference-status.html中所述),您可以检查然后处理,但需要:
>>> import feedparser
>>> nonfeed = feedparser.parse('http://example.com/notafeed')
>>> nonfeed.status
404
>>> feed = feedparser.parse('http://stackoverflow.com/feeds/')
>>> feed.status
200
另见documentation on "HTTP Redirects"。所有HTTP标头都在headers
属性中返回,这对于错误报告非常有用。
即使没有HTTP错误,也可能存在一些解析错误。虽然feedparser在接受的内容方面非常宽松,但如果遇到格式错误的Feed,它会设置bozo flag(并在bozo_exception
中添加错误说明):
>>> feed.bozo
False
>>> nonfeed.bozo
1
>>> nonfeed.bozo_exception
SAXParseException('syntax error',)