crontab 定时任务执行 python 脚本提示三方模块找不到

问题描述:

linux 命令行手动执行 python 脚本,任务执行没有任何成功;将 python 脚本执行添加到 crontab 定时任务中执行,提示第三方模块找不到?

解决方法:

(1)在 linux 命令行输入 python 命令

(2)在 python 可执行环境输入:

>>> import sys
>>> sys.path

(3)上述命令执行成功后,会显示多个 python 库的查找路径,通过这个路径找到对应的 python 可执行命令

比如:python 库查找路径为:/home/***/***/lib/python2.7/site-packages

进入此路径中 lib 的父级目录,找到 bin 目录即可找到 python 可执行文件(对应上面的路径即为:/home/***/***/bin/)

(4)在 linux 命令行输入  ./python,进入本目录 python 对应的可执行环境

(5)在 python 可执行环境中引用报错的三方模块

>>> import ***

(6)查找每个路径下的 python 可执行命令,并执行第 4 步和第 5 步的操作,直到找到三方模块可引用正确的那一个

(7)pwd 输出可引用三方模块的 python 路径,以绝对路径调用 python 脚本即可

总结:

linux 中 python 安装目录可能有好几个,手动执行时会有自动查找的操作,怀疑加入到定时任务时自动查找失效了。

猜你喜欢

转载自blog.csdn.net/u011848617/article/details/83148825