scrapy+shell+cron定时执行脚本


1、先写脚本zc.sh,先上代码

#! /bin/bash

export PATH=$PATH:/usr/local/bin   

export LANG=zh_CN.UTF-8

source ~/.virtualenvs/spider/bin/activate   #激活虚拟环境

cd ~/pta/login/login/logs   #切换到zc.sh的目录下

nohup scrapy crawlall >> cron.log 2>&1 &       #运行python脚本

注意事项

1、前面3行没有备注,是保证shell顺利执行的,不用管它。

2、激活虚拟环境。

我的虚拟环境是用virtualenvs配置过的,在目录 ~/.virtualenvs/spider/bin下面。有一个activate的选项如下图。可以根据自己的具体情况



2.脚本写好之后,运行脚本

输入脚本的绝对路径 +脚本名称  

注意事项:

1、出现权限不够的错误

https://blog.csdn.net/diweikang/article/details/78642551

直接输入 chmod 777 you_shell_name

2.出现解释器错误:没有那个文件或目录

可能原因是windows上是dos。而ubuntu上只能识别unix类型的

vim you_shell_name

:set ff

:set ff=unix

:wq

在运行脚本。具体情况如下图



3.脚本可以正常运行后,完成crontab的编辑

输入命令crontab -e,进行编辑,保存


4.查看脚本的运行情况

vim /var/log/cron.log


注意事项

cron.log出现其他的报错,网上基本都能找到对应的数据

主要提醒一下,如果cron.log里面无论怎么改都插入不了日志。需要注意给用户开文件权限,让用户能插入数据。

这个我不是很了解,所以使用了 chmod 777 cron.log.



下一个目标:

整个爬虫都能自动运行了。需要会自定义scrapy的log日志。让所有项目的日志都导入到一个日志文件夹下。每天就可以只要看下日志就可以判断哪些数据有问题。方便自己偷懒...........

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容