如何自动运行Python脚本
我想知道怎么自动运行三个Python脚本。假设我有三个脚本,分别是a.py、b.py和c.py。
a.py这个脚本的作用是运行一个网络爬虫,并把结果保存为一个xml文件。接着,b.py会读取这个xml文件,并把内容保存为一个pickle文件。最后,c.py会把这个pickle文件里的数据插入到数据库中。
有没有办法让这个过程自动化呢?
2 个回答
0
写一个包装的Python脚本,这个脚本需要导入a、b和c这三个模块,并且按顺序运行它们(同时要检查错误、发送通知和进行记录)。然后使用系统的cron守护进程来安排这个包装脚本的运行(如果你是在UNIX系统上)。
7
你只需要写一个shell脚本,内容是:
python a.py && python b.py && python c.py
这里的&&
是用来连接命令的,意思是只有前面的命令成功执行后,后面的命令才会继续执行。比如,b.py
只有在a.py
成功完成后才会运行(也就是返回0表示成功)。
把这个脚本保存为一个没有扩展名的文件(因为某些版本的cron不支持.sh
文件,我是通过很长时间的尝试才发现的),然后用crontab -e
把这个脚本的路径添加到你的cron表里。关于如何安排cron任务的信息可以在superuser上找到,所以我建议你去那里搜索相关信息,而不是在这里的SO(这里更侧重于编程)。