用cron运行python脚本

Pau*_*ulo 2 python linux django cron crontab

嘿伙计们,我试图在每5分钟使用cron运行一个python脚本,在脚本里面是一个django导入

import django
Run Code Online (Sandbox Code Playgroud)

当运行crontab时,我收到邮件以下错误

ImportError: No module named django
Run Code Online (Sandbox Code Playgroud)

这是crontab文件的样子:

MAILTO=commonzenpython@gmail.com

*/5 * * * *  /usr/bin/python /Users/paulo/Desktop/ashtanga/ping/sender.py
Run Code Online (Sandbox Code Playgroud)

你们中的任何人都知道造成这种情况吗?顺便说一句,我确实有django insalled版本1.2,python 2.6和MacOX 10.6

编辑:

$ PYTHONPATH =与python不同

python -v =

Python 2.6.6 (r266:84374, Aug 31 2010, 11:00:51) 
[GCC 4.0.1 (Apple Inc. build 5493)] on darwin
Run Code Online (Sandbox Code Playgroud)

哪个python

/Library/Frameworks/Python.framework/Versions/2.6/bin/python
Run Code Online (Sandbox Code Playgroud)

cyf*_*cyf 5

我想在@Hank的回答中添加一点.

cron没有像您使用的shell中那样设置所有环境变量.只有LOGNAME,HOMESHELL定义.(有关详细信息,请参阅"man 5 crontab".)

您可以按照定义PYTHONPATH的方式在cron中定义环境变量MAILTO.所以不需要shell包装器.