2015-08-18 137 views
0

你好,我正嘗試在樹莓派非Windows窗口管理器中運行iceweasel瀏覽器(由selenium-webdriver打開)。用xinit運行硒Raspberry pi

像我想要的那樣啓動iceweasel的命令是「xinit/usr/bin/iceweasel -e Fullscreen -a http://google.com」。我只是想把它和硒聯繫起來,但我不知道如何。 使用wheezy Debian。

硒代碼:

import os 
import sys 
import time 
import serial 
from selenium import webdriver 
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities 
from selenium.webdriver.common.keys import Keys 
from selenium.webdriver.chrome.options import Options 



driver = webdriver.Firefox() 
webdriver.common.utils.free_port() 
driver.get("http://0.0.0.0:3333/") 


ser = serial.Serial(
     port='/dev/ttyAMA0', 
     baudrate = 9600, 
     parity = serial.PARITY_NONE, 
     stopbits = serial.STOPBITS_ONE, 
     bytesize = serial.EIGHTBITS, 
     timeout=1 
) 



while True: 
     elem = driver.find_element_by_id('keyvalue') 
     abc = elem.get_attribute("value") 
     time.sleep(0.5) 
     if abc != '': 
       print (abc) 
       driver.execute_script("document.getElementById('keyvalue').value = ''") 
       ser.write(abc) 
     else: 
       time.sleep(0.1) 

回答

0

由於硒依賴於運行的瀏覽器,並且因爲瀏覽器將只在窗口環境中運行,這樣看來,有沒有辦法做你想做的事,非窗口環境(儘管我很樂意被證明是錯誤的)。

+0

我會高興地證明你錯了(我認爲)我發佈了這個在樹莓派論壇以及其中一個涉及使用「火柴盒窗口管理器」的答覆,所以我做了一個sh腳本「火柴盒窗口 - 經理&(\ r)python selenium.py「這似乎已經完成了三招。注意我還編輯了firefox_binary.py(在硒源中),所以timout被設置爲60而不是默認值30 – AceScottie

+0

不是我經常是對的,但我錯了(儘管我可能會爭辯說你*在*運行窗口環境,只要你可以運行你需要的軟件,這似乎是徒勞的)。 – holdenweb

+0

我的非窗戶管理器我的意思是沒有加載桌面不能記得哪個帖子稱它爲非窗口管理器。即時猜測xinit是Windows管理器只是運行x服務器,所以回顧我的問題,我想你實際上是正確的,現在我的問題在於改變iceweasel瀏覽器的窗口大小。 – AceScottie