python 爬虫每天定时启动爬虫任务
# coding=utf-8
import datetime
import time
def doSth():
# 这里是执行爬虫的main程序
print '爬虫要开始运转了....'
print time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time()))
def main(h, m):
while True:
now = datetime.datetime.now()
print now.hour, now.minute
if now.hour == h and now.minute in m:
doSth()
time.sleep(60)
main(10, m=[47, 48, 49, 50])
--------------------------------------华丽的分割线--------------------------------------------------
上面是自己通过sleep()定义的一个简单的定时任务,在正真的生产中,如果有很多的任务时,这并不是一个好的办法,这时候就需要用Linux下的定时任务crontab这个神器了.
在LINUX中,周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron]。cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间。
cron的配置文件称为“crontab”,是“cron table”的简写。
可通过crontab -l 命令查看你当前机器的定时任务情况, 使用crontab -e进行对你要执行的定时任务进行编辑
*/2 * * * * /usr/bin/python2.7 /home/jianping/work/test.py >> /home/jianping/work/cron.log 2>&1&
这是一个每2分钟执行一次test.py文件的定时任务.由于这方面的资料很多,具体的crontab用法大家可以自行百度,在此不做描述