scrapy 爬虫错误求助

scrapy 爬虫错误求助,第1张

1、爬数据的时候,有时会遇到被该网站封IP等情况,response的状态码为403,那么这时候我们希望能够抛出

CloseSpider的异常。

2、但是如scrapy官网提到的,Scrapy默认的设置是过滤掉有问题的HTTP response(即response状态码不在200-300之间)。因此403的情况会被ignore掉,意思就是我们不是处理这个url 请求的response,直接就忽略,也就是及时我们用response.status == 400判断没有作用,因为只有status处于200-300的请求才会被处理。

3. 如果我们想捕获或者处理403,或者其它如404或者500,这种请求时,我们在spider的类中把403放在handle_httpstatus_list中。如下就行。

class MySpider(CrawlSpider):

handle_httpstatus_list = [403]

或者将403放在HTTPERROR_ALLOWED_CODES设置中

即在settings中增加HTTPERROR_ALLOWED_CODES = [403], HTTPERROR_ALLOWED_CODES默认是[]

http:// doc. scrapy.org/en/1.0/topics/spider-middleware. html#httperror-allowed-codes

4. 设置完handle_httpstatus_list或者HTTPERROR_ALLOWED_CODES之后,就可以通过判断response.status == 403抛出CloseSpider异常,结束抓取。

如果您有还原软件或自带的还原,还原一下系统有效又省事。

你想想出事前你是怎么 *** 作的?故障不会无缘无故的出现吧?将出事前下载所有东西全部卸载,在不可以,还原系统或重装,如果是硬件的问题就修修去,有问题请你追问(先看看下面的方法)。

电脑无声的解决方法:有修复系统和用软件安装声卡驱动的两种解决方法(首先看看小喇叭或在控制面板中看看是否设置了静音,在通过耳机检查是否有声音输出,如果有,则是音箱或喇叭和各连线的故障引起的,在有就是声卡驱动损坏引起的,如果是请您安装合适的声卡驱动,如果是硬件问题引起的,自己又解决不了,建议检修一下去,有问题请你追问我)

1、开机按F8不动到高级选项出现在松手,选“最近一次的正确配置”回车修复(这个方法可以恢复原来的驱动,如果您的电脑是Win8,进不了系统是进不了安全模式的,只有重装了)。

2、如果是因更新驱动引起的故障,右击我的电脑选属性,选设备管理器找到这个驱动右键选属性/上面的驱动程序选项/选下面返回驱动程序选项按确定(如果可以进入安全模式,也是开机按F8)。

3、如果故障依旧,还原系统或重装。

使用系统自带的系统还原的方法:

系统自带的系统还原:“开始”/“程序”/“附件”/“系统工具”/“系统还原”,点选“恢复我的计算机到一个较早的时间”,按下一步,你会看到日期页面有深色的日期,那就是还原点,你选择后,点击下一步还原(Win78还原系统,右击计算机选属性,在右侧选系统保护,系统还原,按步骤做就是了。如果有还原软件,也可以还原修复)。

Scrapy依赖于twisted,所以如果Scrapy能用,twisted肯定是已经安装好了。

抓取到的数据,可以直接丢到MySQL,也可以用Django的ORM模型丢到MySQL,方便Django调用。方法也很简单,按数据库的语句来写就行了,在spiders目录里定义自己的爬虫时也可以写进去。

当然使用pipelines.py是更通用的方法,以后修改也更加方便。你的情况,应该是没有在Settings.py里定义pipelines,所以Scrapy不会去执行,就不会生成pyc文件了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10822819.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-11
下一篇 2023-05-11

发表评论

登录后才能评论

评论列表(0条)

保存