写好的python代码定时运行

写了个简单程序,可以抓取几个网站上的头条,然后汇总发送到自己邮箱。本来是想弄到腾讯云服务器上,设定每天运行。

结果弄到服务器上以后,程序运行出错。可以抓取头条内容,但是无法发送邮件,报错 connect time out.

上网查了一下,都是说由于腾讯云、阿里云关闭了25端口,所以无法使用smtp服务发送邮件。

进入自己的腾讯云账号,进入管理界面,可以找25端口解封功能,直接申请就可以解封了。但是有总次数限制的,5次。

开启后,程序运行正常。也可以发送邮件了。

程序正常后,就是设定每天定时运行程序了。

 

1.  首先编写要执行的命令脚本cron.sh

1

2

3

4

5

6

#! /bin/sh

 

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

 

cd /project/python/digiprintnews

nohup scrapy crawl basic

执行,crontab -e,规定crontab要执行的命令和要执行的时间频率,这里我需要每天9点半就执行scrapy crawl basic这条爬取命令:

1

30 9 * * *  sh /project/bin/cron.sh

  

借此机会复习下,crontab的常见格式: 

每分钟执行  */1 * * * *

每小时执行     0 * * * *

每天执行        0 0 * * *

每周执行       0 0 * * 0

每月执行        0 0 1 * *

每年执行       0 0 1 1 *

写好的python代码定时运行