使用crontab运行脚本时无法导入Python MySQL模块

发布于 2021-01-29 15:22:02

我正在使用crontab来运行需要模块MySQLdb的python脚本。当我从命令行运行此脚本时,一切正常。但是,尝试使用crontab运行它会引发此错误。

Traceback (most recent call last):
  File "clickout.py", line 3, in <module>
    import MySQLdb
ImportError: No module named MySQLdb

我做了一个谷歌搜索,并将其添加到我的脚本的顶部#!/usr/bin/python。但是,这没有做任何事情,而且我仍然遇到相同的错误。我究竟做错了什么?

关注者
0
被浏览
77
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    可能是您正在使用其他Python可执行文件。在外壳上,输入which python以查找Python可执行文件所在的位置。假设这返回的不是/usr/bin/python,比如/home/myuser/bin/python,然后在脚本的第一行中编写:

    #!/home/myuser/bin/python
    

    也可能是您的外壳程序具有名为的环境变量PYTHONPATH。如果是这种情况,并且您发现它是从哪里导入库的,那么这就是在导入“ MySQLdb” 之前
    在脚本的第一行中添加查找库的路径的方式:

    import sys; sys.path.append('/path/to/MySQLdb-lib/')
    


推荐阅读
知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看