爬虫工作量由小到大的思维转变---<第二十七章 Scrapy的暂停和重启>

2023-12-25 17:45:50

前言:

一个小知识点,刚刚有朋友私信我的; 就是scrapy的暂停与重启;

没什么可讲的,就是一个命令,还有需要注意的一个地方,我就当留言板来写这篇吧!

正文:

首先,如果我们在控制台中,一般都是用ctrl+c进行停止;(ctrl+c一次是暂停,两次是终止)

而如果想让scrapy继续第一次爬完之后,带爬取的任务继续下去,我们必须要明白,需要有一个队列~或者说,我们需要知道scrapy第一次爬了哪些(这次重新爬就不用再爬了;然后我们接着爬); 于是,就需要有一个专门用来放这些缓存的文件夹;

直接控制台,或者cmd里面到爬虫文件:

scrapy crawl <spider_name> -s JOBDIR=<job_directory>

其中,<spider_name> 是要运行的爬虫的名称,<job_directory> 是指定的用于存储状态信息的目录。通过设置 -s JOBDIR=<job_directory> 参数,Scrapy 将在指定的目录中创建状态文件,并将爬虫的状态信息存储在其中。

也就是说,当你运行的时候,最好在后面加一个 "-s JOBDIR=一个文件夹名"(如果你没有创建,他会自己给你创建的);

然后,你不小心停了,或者中断了;他会自动把爬虫信息,存到这个文件夹中~?

下次,你再要重启你这未完成任务的爬虫时,继续用这个

scrapy crawl <spider_name> -s JOBDIR=<job_directory>

就行了!!!

然后,网上说啥:"在setting里面设置JOBDIR=xxx" ,我个人感觉没啥用;虽然原理是这么个原理,但实际在运行爬虫的时候,多还是临时添加一个 JOBDIR,这样一个爬虫一个任务会很方便; 即使你在setting里添加了这个jobdir设置,你正常启动爬虫,他不会给你生成缓存文件夹的;

文章来源:https://blog.csdn.net/m0_56758840/article/details/135203472
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。