关于Scrapy爬虫项目运行和调试的小技巧(下篇)

前几天给你们分享了关于Scrapy爬虫项目运行和调试的小技巧上篇,没来得及上车的小伙伴能够戳超连接看一下。今天小编继续沿着上篇的思路往下延伸,给你们分享更为实用的Scrapy项目调试技巧。shell

3、设置网站robots.txt规则为False框架

通常的,咱们在运用Scrapy框架抓取数据以前,须要提早到settings.py文件中,将“ROBOTSTXT_OBEY = True”改成ROBOTSTXT_OBEY = False。scrapy

在未改动以后settings.py文件中默认爬虫是遵照网站的robots.txt规则的,以下图所示。网站

 

若是遵照robots.txt规则的话,那么爬取的结果会自动过滤掉不少咱们想要的目标信息,所以有必要将该参数设置为False,以下图所示。命令行

 

设置好robots.txt规则以后,咱们即可以抓到更多网页的信息。调试

4、利用Scrapy shell进行调试orm

一般咱们要运行Scrapy爬虫程序的时候会在命令行中输入“scrapy crawl crawler_name”,细心的小伙伴应该知道上篇文章中建立的main.py文件也是能够提升调试效率的,不过这两种方法都是须要从头至尾运行Scrapy爬虫项目,每次都须要请求一次URL,效率十分低。运行过Scrapy爬虫项目的小伙伴都知道Scrapy运行的时候相对较慢,有时候由于网速不稳定,根部就没法动弹。针对每次都须要运行Scrapy爬虫的问题,这里介绍Scrapy shell调试方法给你们,能够事半功倍噢。开发

Scrapy给咱们提供了一种shell模式,让咱们能够在shell脚本之下获取整个URL对应的网页源码。在命令行中进行运行,其语法命令是“scrapy shell URL”,URL是指你须要抓取的网页网址或者连接,以下图所示。get

 

该命令表明的意思是对该URL进行调试,当命令执行以后,咱们就已经获取到了该URL所对应的网页内容,以后咱们就能够在该shell下进行调试,不再用每次都执行Scrapy爬虫程序,发起URL请求了。源码

经过shell脚本这种方式能够极大的提升调试的效率,具体的调试方法同爬虫主体文件中的表达式语法一致。举个栗子,以下图所示。

 

将两个Xpath表达式所对应的选择器放到scrapy shell调试的脚本下,咱们能够很清楚的看到提取的目标信息,并且省去了每次运行Scrapy爬虫程序的重复步骤,提升了开发效率。这种方式在Scrapy爬虫过程当中十分经常使用,并且也十分的实用,但愿小伙伴们均可以掌握,而且积极主动的为本身所用。

关于Scrapy爬虫项目运行和调试的部分小技巧先分享到这里,尤为是Debug调试和Scrapy shell调试极为经常使用,但愿小伙伴们能够多多利用起来,让其为本身的项目服务,能够事半功倍噢~~

相关文章
相关标签/搜索