zoukankan      html  css  js  c++  java
  • Crontab 驱动 Scrapy 定时任务

    做了个爬虫去定时抓自己发布在cnblogs更新的文章,考虑用corntab定时任务驱动

    crontab 任务配置

    crontab配置规则就不啰嗦了,网上很多介绍,规则很容易功能却很强大。
    然后我发现只有.cron后缀的文件才能被配置
    crontab run_scrapy.cron

    crontab 的坑

    crontab中没有读取到环境变量,因此所有命令必须手动写全,或者执行一个脚本,在脚本中导入环境变量

    */1 * * * * /usr/bin/bash echo "U'll see me next miniute"
    
    #!/usr/bin/bash
    . ~/.bash_profile
    ps -ef | grep 'scrapy'
    

    scrapy 的坑

    scrapy 的命令必须在项目文件夹下才能正常运行,而且,scrapy本身也有环境路径

    [root@iZrj9acq02ar6zvxx6ovrcZ scripts]# whereis scrapy
    scrapy: /usr/local/bin/scrapy
    

    run_scrapy.cron 类似于这样:

    1 6 * * * /var/www/django-web/blog/scripts/run_blogs.sh >> crawl_blog.log
    

    run_scrapy.sh

    #!/bin/bash
    echo "*****crontab begin:*****"
    cd /var/www/django-web/blog/cnblogs
    #/usr/local/bin/scrapy crawl cnblogs -s LOG_FILE=/tmp/scrapy.log >> /tmp/crawl_blog.log & 
    /usr/local/bin/scrapy crawl cnblogs >> /tmp/crawl_blog.log & 
    echo $(ps -ef | grep "scrapy crawl cnblogs"  |grep -v 'grep' |awk -F ' ' '{print $2}')
    
  • 相关阅读:
    java序列化与反序列化
    HTTP状态码
    基本运算符
    2019.9.10附加题while练习
    2019.9.11作业
    字符串
    列表list
    2019.9.10作业
    数字类型
    数据类型
  • 原文地址:https://www.cnblogs.com/dapianzi/p/8423788.html
Copyright © 2011-2022 走看看