修复阿里云服务器漏洞升级python程序致使的。
python程序用是3写的,linux自带的是2.7.5。升级后定时任务运行正常。代码以下:
crontab -l查看定时任务:python
# 天天上午6点10分定时抓取价格信息,抓取猪、牛 10 6 * * * /opt/sh/pork_worm.sh #50 11 * * * python3 /opt/price_worms/pork_worm_daily.py
其中pork_worm.sh只为一个shell脚本运行python指令。(想让定时任务直接运行python脚本的,一直没成功,问题为不运行不报错,没找到缘由) pork_worm.sh内容以下:linux
#!/bin/bash python /opt/price_worms/pork_worm_daily.py
/usr/local/bin/ python 升级后定时任务不运行了。shell
在命令行直接运行 sh /opt/sh/pork_worm.sh 是能够运行的。 后来用python 直接运行 /opt/price_worms/pork_worm_daily.py 报错,bash
[root@cciikaifa ~]# python /opt/price_worms/pork_worm_daily.py Traceback (most recent call last): File "/opt/price_worms/pork_worm_daily.py", line 3, in <module> from bs4 import BeautifulSoup ImportError: No module named bs4
啥找不到module呢,根本缘由是python2 不兼容这个版本的bs4.
直接用python3 运行:服务器
python3 /opt/price_worms/pork_worm_daily.py 开始爬取数据2019-08-16 15:13:40
运行正常。阿里云
定时任务试了几回仍是不运行。命令行
后来在shell启动脚本文件里加入python3的根路径才运行正常。code
输入指令: whereis python3 python3: /usr/local/bin/python3.6 /usr/local/bin/python3.6m /usr/local/bin/python3.6m-config /usr/local/bin/python3 /usr/local/bin/python3.6-config /usr/local/lib/python3.6
而后全部sh脚本运行python的改为以下:orm
#!/bin/bash /usr/local/bin/python3 /opt/price_worms/pork_worm_daily.py
而后运行正常了!crontab