首页 > 解决方案 > Scrapy :: 如何获取带有例外的请求以导出到.csv?

问题描述

我对使用 Scrapy 还很陌生,并且已经编写了大约 2 年的代码(对不起,如果这是一个愚蠢的问题)。

我目前正在尝试抓取一般信息,例如网站是否在网站列表中具有“隐私政策”链接或“关于我们”链接。我已经能够在具有支持 HTTPS 的 URL 或具有实时链接的网站上抓取信息。

对于无法加载或存在 HTTPS 与 HTTP 问题的网站,我遇到了一些例外情况:

根据蜘蛛的多次爬取,我发现生成的.csv 的网站排除了这些链接。

我想知道如果可能的话,如何让蜘蛛将这些失败的链接包含在每列的预设参数中。

标签: pythonscrapy

解决方案


Request功能之外callback还有errback(文档在这里)。

您可以编写函数来处理产生错误的请求。

所以你使用:yield Request(url="http://www.example.com", callback=self.mycallback, errback=self.myerrback)

并定义:

def myerrback(self, failure):
    # your processing here

在此处检查使用情况。


推荐阅读