我想運行一個python腳本,在其中打開一個網頁並單擊某個元素。但腳本運行速度非常慢,並給出了隨機例外。無法在Amazon EC2上運行python selenium webdriver腳本
主要是它在停止線 驅動= webdriver.Firefox()
消息 -
selenium.common.exceptions.WebDriverException:消息: '可以\' 噸加載的配置文件。配置文件?目錄:/ tmp/tmp4liaEq Firefox輸出:Xlib:擴展名「RANDR」缺少顯示「:1733」。\ n1403086712970 \ taddons.xpi \ tDEBUG \ tstartup \ n1403086713204 \ taddons.xpi \ tDEBUG \ tcheckForChanges \ n1403086713568 \ taddons。 XPI \ tDEBUG \發現\ n」
有時TNO變化 - driver.find_element_by_xpath("//a[@id='some_id']")
返回錯誤的元素不可見,所以不能點擊。
相同的腳本在我的系統上運行時有4GB RAM。 (EC2系統規格〜600MB內存)
我試圖尋找到系統中, 「頂」 命令返回 - 我已經安裝了Firefox和也
604332k total, 577412k used, 26920k free, 6616k buffers
xvfb的,因爲我運行Firefox的headlessly
@vipul任何想法可能是什麼問題? –
請問您可以將代碼添加到問題中嗎? – Vipul
有時驅動程序試圖在頁面完全加載之前單擊某個元素,在這種情況下元素不可見。爲了讓頁面在點擊元素之前完全加載,我們使用顯式等待(在selenium文檔中給出)或簡單的'time.sleep'。而代碼停在'driver = webdriver.Firefox()'看起來很奇怪。嘗試重新安裝硒可能是你的版本有問題:'PIP安裝-U硒' – Vipul