2014-03-12 95 views
1

我試圖用硒執行在Python下面的代碼:啓動Chrome後Selenium不會返回,但在啓動Firefox後返回?

def create_browser(first_page=None): 
    print "Starting" 
    browser = webdriver.Chrome() 
    if first_page: 
     browser.get(first_page); 
    print "Done." 
    return browser 

browser = create_browser() 

當我執行這個代碼,鉻啓動,但「完成」說法沒有得到打印。但是,如果我用Firefox()代替Chrome(),瀏覽器將啓動並打印「完成」。我也嘗試在終端上驗證這一點。如果我執行下面的一系列語句:

from selenium import webdriver 
driver = webdriver.Chrome() 

當我更換Chrome()Firefox()正常的終端返回並顯示>>(在Python外殼,但不與鉻發生誰能告訴這是怎麼回事錯在這裏。我真的很感謝你的幫助感謝

更新:!

我不知道如果這有助於但是當我執行使用webdriver包含我的代碼的目錄獲取生成一個名爲chromedriver.log文件它有FO。內容:

[0.000][INFO]:  ChromeDriver 20.0.1133.0 /home/therookie/bin/chromedriver 
[1.000][FINE]:  Initializing session with capabilities { 
    "browserName": "chrome", 
    "chromeOptions": { 
     "args": [ ], 
     "extensions": [ ] 
    }, 
    "javascriptEnabled": true, 
    "platform": "ANY", 
    "version": "" 
} 

[1.001][INFO]:  Launching chrome: /usr/bin/google-chrome --disable-hang-monitor --disable-prompt-on-repost --dom-automation --full-memory-crash-report --no-default-browser-check --no-first-run --ignore-certificate-errors --homepage=about:blank 
[11.796][SEVERE]: Failed to initialize connection 
+0

什麼版本的硒和鉻驅動程序? – Amey

+0

我不太確定。我如何檢查? – TheRookierLearner

+0

檢查python庫的方法 - http://stackoverflow.com/questions/710609/checking-python-module-version-at-runtime/4939465#4939465什麼是chrome驅動程序版本是你安裝的(檢查可執行文件名) – Amey

回答

0

Chrome需要一個名爲chromedriver的特殊文件才能運行。看here看什麼chromedriver是

from selenium import webdriver import os chromedriver = "PATH_TO_CHROMEDRIVER" os.environ["webdriver.chrome.driver"] = chromedriver browser = webdriver.Chrome(executable_path=chromedriver) 這應該啓動Chrome和打印完成。

相關問題