Raspberry Pi Crontab Python subprocess.Popen 没有显示

Raspberry Pi Crontab Python subprocess.Popen not showing

简介

我是 raspberry-pi 的初学者,目前正在从事一个项目,该项目需要在启动时 运行 python 脚本。

脚本的一部分将检查某些条件,然后在必要时打开 chromium 浏览器(使用 subprocess.Popen())。

代码

下面是我的 python 脚本的简短摘录(睡眠是为了检查脚本是否 运行ning):

import shlex, subprocess
import time

command = '/usr/bin/chromium-browser "https://www.google.com" -start-maximized --no-sandbox'
args = shlex.split(command)
browser = subprocess.Popen(args)
time.sleep(1000)

当我从终端运行宁时,代码似乎正确执行:

python /home/pi/Desktop/test_popen_browser.py

但是,当我尝试在 crontab 上安排它时(使用带有“sudo crontab -e”命令的终端进行编辑),它似乎不起作用(python 正在执行脚本,但没有打开浏览器 window):

@reboot python /home/pi/Desktop/test_popen_browser.py &

问题

已尝试在网上搜索答案,我认为是环境变量引起的问题。但是我就是不知道我到底应该把环境变量设置成什么。

有谁知道问题出在哪里吗?

在此先感谢您!

问题是当您的脚本在重启时启动时 GUI 管理器尚未启动。而不是 运行 你的脚本作为 cronjob 将它放在 /home/pi/.config/lxsession/LXDE-pi/autostart

@lxpanel --profile LXDE-pi
@pcmanfm --desktop --profile LXDE-pi
@xscreensaver -no-splash
@point-rpi
/usr/bin/python /home/pi/Desktop/test_popen_browser.py
unclutter -idle 30

祝你好运!