如何计算Scrapy中的空响应?

时间:2014-04-29 09:59:43

标签: python web-scraping web-crawler scrapy

我想知道有多少以及我的哪些请求没有使用Scrapy返回任何数据。有很多情况,比如返回404响应,或者当服务器返回一些内容但没有删除任何数据时,因为格式不是预期的格式(例如,当我从一种特定的命名div中提取时,它实际上并不存在于其中一个网址中)。 谢谢!

1 个答案:

答案 0 :(得分:3)

  

e.g。当我从一种特定的命名div中提取时,它实际上并不存在于其中一个网址中

这实际上不是HTTP术语中的空响应。你的选择器没有匹配。

你必须自己实现这个逻辑:

sel = Selector(response)
data = sel.xpath('//div[@class="class"]').extract()
if not data:
    # increment failure stats here
    return
# else fill the item

对于统计信息,您可以使用Scrapy stats collector