基本信息
源码名称:scrapy之实现断点续爬以及定时启动和关闭功能.py
源码大小:4.86KB
文件格式:.py
开发语言:Python
更新时间:2020-12-21
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300

本次赞助数额为: 2 元 
   源码介绍
实现scrapy的断点续爬

1.设置断点续爬:

在定时启动和关闭前,需要先设置断点续爬,将关闭前的数据保存,防止再次启动时
新建一个run.py文件

from scrapy import cmdline
cmdline.execute("scrapy crawl douluo -s JOBDIR=crawls".split()) 
  • 1
  • 2

这样爬虫在正常结束时,会新建一个cralws文件夹,并将进度保存在里面

2.设置关闭时间

在启动时添加CLOSESPIDER_TIMEOUT=秒数
即可将爬虫设置成多少秒后自动停止运行

from scrapy import cmdline
cmdline.execute("scrapy crawl douluo -s CLOSESPIDER_TIMEOUT=3 -s JOBDIR=crawls".split()) 
  • 1
  • 2

这样,run.py文件就被编辑好了,用于运行scrapy爬虫

3.新建一个runs.py,用于将run文件放入循环中

若直接在run.py中将cmdline.execute放入循环,程序在cmd结束后就结束了,并不会循环,因此新建一个py文件,用于将启动cmd放入循环,这样每次爬取结束后程序都不会结束
具体代码如下:

import os import time while True: os.system('run.py') time.sleep(5) 
  • 1
  • 2
  • 3
  • 4
  • 5

这样,我们就将scrapy设置成了启动后3s自动停止,停止后5s自动启动,并且拥有断点续爬的功能


import os import time while True: os.system('run.py') time.sleep(5)