2013-05-17 184 views
0

我试图用crontab -e运行cron作业。我使用的是Python代码试图运行crontab

#!/usr/bin/env python 
import webbrowser 
handle = webbrowser.get() 
handle.open_new_tab('http://www.youtube.com/watch?v=Y4QGPWLY-EM') 

运行的crontab -ei有:

* * * * * python /home/sean/imBlue.py >>/tmp/out.txt 2>&1 

而且我不断收到这些错误消息

Traceback (most recent call last): 
    File "/home/sean/imBlue.py", line 3, in <module> 
    handle = webbrowser.get() 
    File "/usr/lib/python2.7/webbrowser.py", line 52, in get 
    raise Error("could not locate runnable browser") 
webbrowser.Error: could not locate runnable browser 

我不知道我需要什么包括我做错了什么。当我在bash中运行脚本时:python scriptName.py 我没有任何问题。此外,我已将文件的设置更改为chmod a + x。

+0

您使用哪个浏览器? – Ofiris

+0

我使用Firefox浏览器 – Sean

+0

'handle = webbrowser.get('firefox')' – Ofiris

回答

1

即使您没有登录,crontab条目也会运行,并且不会保留环境。

你至少需要设置并在crontab出口DISPLAY变量(假设你确实都记录在X11会话中的crontab的时间)

也许改变crontab进入

* * * * * env DISPLAY=:0.0 python /home/sean/imBlue.py >>/tmp/out.txt 2>&1 

可以提供帮助。当然,如果你当时没有登录,它将无法工作

我的感觉是,你的整个脚本是一个巨大的错误,或一个坏的把戏:你不想每分钟播放一段视频超过5分钟!

+0

我该怎么做 – Sean