1

我正在尝试使用 crontab -e 运行 cron 作业。我正在使用 python 代码

#!/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。

4

1 回答 1

2

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

您至少需要在 crontab 中设置和导出DISPLAY变量(假设您确实在 crontab 时登录到 X11 会话)

也许将crontab条目更改为

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

有帮助。当然,如果您当时没有登录,它将无法正常工作

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

于 2013-05-17T04:49:51.537 回答