Откройте URL в Epiphany из скрипта Python на RPi2
Поэтому я пытаюсь открыть URL-адрес в Epiphany WebBrowser [скажем, к примеру http://www.google.com
] из сценария Python. Мой скрипт на Python выглядит следующим образом:
import os
string = "DISPLAY=:0 xdg-open http://www.google.com"
os.system(string)
Возвращает ошибку: xdg-open: no method available for opening 'http://www.google.com'
Однако, если я наберу DISPLAY=:0 xdg-open http://www.google.com
в LXTerminal работает нормально. Он также работает удаленно через SSH.
Есть идеи? Также кто-то может объяснить мне, почему команда отлично работает в терминале, но не когда вы пытаетесь вызвать их из скрипта Python, используя os.system()
?
ОБНОВЛЕНИЕ - НУЖНА ПОМОЩЬ
ПРИМЕЧАНИЕ. Все файлы находятся в /home/pi
После большого разочарования я решил попробовать следующий метод. Я создал файл с именем google.sh
, Код для google.sh
следующим образом:
#google.sh
DISPLAY=:0 xdg-open http://www.google.com
когда я призываю эту программу с помощью ./google.sh
от LXTerminal все отлично работает! Отлично, теперь давайте назовем его из скрипта Python под названием test.py
чей код выглядит следующим образом:
# test.py
import os
string = "/home/pi/google.sh"
os.system(string)
Однако по какой-то причине он все еще возвращает: xdg-open: no method available for opening 'http://www.google.com'
1 ответ
Как насчет этого? Идея состоит в том, чтобы открыть окно прозрения и закрыть его через 5 секунд.
import subprocess
from time import sleep
p = subprocess.Popen("exec epiphany-browser http://yahoo.com", stdout=subprocess.PIPE,shell=True)
sleep(5)
p.kill()
print("done")