Scrapy的暂停和重启有两种方式:官方文档介绍、中文文档
一、命令行方式:
scrapy crawl spider_name -s JOBDIR=crawls/spider_name-1;
两个spider_name即为爬虫名称;后面的JOBDIR即为保存爬虫状态和requests_queue的文件路径, 可以自定义;比如
scrapy crawl bd -s JOBDIR=crawls/001
运行完成之后按Ctrl+C一次发送暂停信号,此时爬虫中断,并会在项目目录下新建一个crawls目录
另外的就是保存爬虫状态的一个文件了(spider.state)
二、第二种方式就是在settings文件增加
JOBDIR='spdier.com'
执行爬虫 scrapy crawl spider_name后,就会自动生成一个spider.com的目录
这里遇到的一个坑就是我试了好几次暂停和重启,因为二者命令都是一样的,当我暂停爬虫的时候再运行命令开启爬虫,爬虫直接结束了,一开始以为是数据量不够导致的;然后加分页,再试还是不行,无奈各种搜;直到我看到了这篇博客:https://www.cnblogs.com/Successful-people/p/10652278.html 果然是中科院院士
我才恍然大悟,原来我暂停用了两次Ctrl+C ,而这时是强制退出!暂停按一次就行!