• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

分布式爬虫关闭scrapy

武飞扬头像
0&1菜菜
帮助1

分类

  1. 通过scrapy框架的扩展进行检测
  2. 通过脚本定时进行进程的检测,然后杀死进程
  3. 通过制定时间进行爬虫的关闭(配置设置)

scrapy框架的扩展(推荐)

书写扩展文件extensions.py,在setting中设置一下内容

'EXTENSIONS'= {
'路径信息.extensions.检测爬虫的类方法': 500,
},

详细的可以参考一下文章,这里不多介绍啦

https://cloud.tencent.com/developer/article/1406573

脚本检测

写爬虫的同学对于任务的调度通常不会采用linux系统的contab而是采用专门的调度系统,当然就算是哦使用contab我们也可以写一个shell脚本,然后让contab来定时进行调度,当然这个情况适用的基本上基本上是关于人物的关闭,而不是任务执行结束而执行

脚本案例如下

JOB_NAME = 任务的名称		# 这个名称通常是ps能查看到的任务
# 这个名字一定要尽可能的详细或者唯一,不然在哦pkill的时候将会杀死自己不想杀死的任务
ProcNumber=`ps -ef |grep -w $JOB_NAME|grep -v grep|wc -l`
if [ $ProcNumber -le 0 ];then
   echo "JOB crawler is not run"
else
   echo "JOB crawler is  running,will be killed!"
   pkill -f 任务名称		# 这里前面的任务名是一样的
fi

定时进行关闭

在setting中设置指定的参数,缺点就是无法进行判断队列中的任务是否去哪不消耗

CLOSESPIDER_TIMEOUT

CLOSESPIDER_ITEMCOUNT

CLOSESPIDER_PAGECOUNT

CLOSESPIDER_ERRORCOUNT

详细的可以参考官方文档
https://scrapy-chs.readthedocs.io/zh_CN/0.24/intro/overview.html

本人对爬虫的理解不深,可能说的有不对的地方,所以希望有说的不对的地方大家可以帮忙指出

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgfiaki
系列文章
更多 icon
同类精品
更多 icon
继续加载