【问题标题】:no module named error in python when running from crontab virtualenv从 crontab virtualenv 运行时,python 中没有名为错误的模块
【发布时间】:2017-02-09 00:32:06
【问题描述】:

我有一个 python 脚本,当我在 virtualenv 中执行它时运行良好,但失败并出现错误“ImportError no module named oauthlib.oauth2...”我相信 cron 作业需要激活虚拟环境或它以某种方式相关。我尝试了很多在这个网站上找到的建议,但没有成功。我错过了一些东西,这可能是微不足道的。 cron 作业以 root 身份运行,并且代码在不同的用户下。我不知道如何解决这个问题。非常感谢您的帮助。

【问题讨论】:

  • 你是对的,你必须告诉 cron 启动(如果它还没有启动)并使用虚拟环境。
  • 我开始工作并运行代码,但在调用模块依赖项“oauthlib.outh2”时出错
  • 你告诉 cron 运行什么命令?
  • * * * * * /usr/bin/python /home/myusername/projects/wl01/wl_cron.py >> /tmp/cron_output 2>&1
  • 谢谢!我去看看。

标签: python cron


【解决方案1】:

您可以像这样使用virtualenv 中的python:

/srv/.virtual/wl/bin/python /home/myusername/projects/wl01/wl_cron.py >> /tmp/cron_output 2>&1

来源和参考:

Cron and virtualenv

【讨论】:

  • 我的 virtualenv 路径是 /srv/.virtual/wl/bin/python
  • 我错了
  • 我收到与代码不同部分相关的错误。但是您帮助我克服了与我原来的问题相关的错误。
猜你喜欢
  • 2018-02-03
  • 2012-12-19
  • 2012-07-15
  • 1970-01-01
  • 2014-02-17
  • 2016-06-17
  • 2016-03-15
  • 2014-04-12
  • 2015-07-12
相关资源
最近更新 更多