美文网首页Linux学习|Gentoo/Arch/FreeBSD
Ubuntu远程服务器定时运行爬虫

Ubuntu远程服务器定时运行爬虫

作者: Stevent | 来源:发表于2018-08-16 15:26 被阅读18次

本来手上的几个爬虫,都是一周要一次数据的,我也就每天手动运行下就好了,结果最近要求每天都要。这不是增加我的工作量了吗? 直接上服务器,每天定时运行去。

环境

  • ubuntu 16.04
  • scrapy
  • requests

怎么才能定时运行呢?

这就要用到ubuntu的定时任务crontab了,其实和pc的是一样的,只是这个是命令行的操作.

sudo  service cron status #查看cron的状态
sudo /etc/init.d/cron start  #开启cron
sudo /etc/init.d/cron stop  #关闭cron

crontab -e #配置任务
# 打开的文件里有说明,格式是分 时 天 月 星期 命令
*/1 * * * * date >> $HOME/test.txt # 表示每过一分钟,把日间写入$HOME/test.txt 
sudo service cron restart  #配置好了,可以重启cron生效
sudo /etc/init.d/cron restart  #重启服务

运行爬虫的脚本

#! /usr/bin/env bash
cd scrapy_path
scrapy crawl 爬虫名 #注意scrapy命令要是绝对路径,不清楚可以用which scrapy查看

怎么检查定时任务有没有运行

pgrep cron #可以查看cron的进程
tail /var/log/cron.log # 直接查看日志
sudo cat /var/log/syslog | tail # 如果上面的命令说没有文件,则可以通过这个命令查看
sudo cat /var/log/syslog | grep cron | tail #也可以通过这个命令筛选下

相关文章

网友评论

    本文标题:Ubuntu远程服务器定时运行爬虫

    本文链接:https://www.haomeiwen.com/subject/ndonbftx.html