1

我已經下載IEDriver和測試的32個和64位版本啓動Internet Explorer(我運行64位Windows 7),我包括含EXE在環境變量路徑的文件夾。無法通過硒webdriver的Python綁定

我已經重新啓動Eclipse和我的整個系統,但仍然得到異常

selenium.common.exceptions.WebDriverException: Message: 
'IEDriver executable needs to be available in the path. 
Please download from http://code.google.com/p/selenium/downloads/list 
and read up at http://code.google.com/p/selenium/wiki/InternetExplorerDriver' 

下面是我的測試設置啓動IE:

def setUp(self): 
    self.driver = webdriver.Ie() 
    self.driver.implicitly_wait(30) 
    self.base_url = "https://accounts.google.com/" 
    self.verificationErrors = [] 
    self.accept_next_alert = True 

我難倒。我以前曾經工作過,但刪除了它,現在想將它放回到我的系統中。我使用Python 3.3,Eclipse 4.2.2,Selenium 2.31和IE 10.0.92

任何想法?

回答

2

你是如何設定你的路?

例如,如果你的IEDriverServer.exeC:\,就應該添加C:\到PATH,而不是C:\IEDriverServer.exe

編輯:在你的情況下,有C:\IEDriver前一個分號,它應該被刪除。

然後重新啓動Eclipse並重試。

編輯:你能否也請嘗試在代碼中指定IEDriverServer.exe路徑?

from selenium import webdriver 

driver = webdriver.Ie(r"C:\\IEDriver\\IEDriverServer.exe") 
+0

我有它在文件夾'C:\ IEDriver'並將其添加到路徑,如圖所示。 – Keith

+0

@Keith:你可以發佈你的PATH嗎?從命令行,'echo%path%'。 –

+0

肯定:'C:\ Python33 \;%SystemRoot%\ system32;%SystemRoot%;%SystemRoot%\ System32 \ Wbem;%SYSTEMROOT%\ System32 \ WindowsPowerShell \ v1.0 \;%JAVA_HOME%\ bin; C:\ Program Files(x86)\ Google \ Chrome \ Application; C:\ Users \ User1 \ Downloads \ windiff; C:\ Program Files \ TortoiseSVN \ bin; C:\ IEDriver' – Keith

1

看來,較新的Selenium 2版本使用不同的方法與IE進行通信比以前。只要按照下面的鏈接中的說明,你應該沒問題。

Driver executable must be set by the webdriver.ie.driver system property

另外,還要檢查以下點。當我在Windows Vista或Windows 7自動化IE的Web應用程序

在IE 7或更高版本我也遇到同樣的,你必須爲每個區域設置的保護模式設置爲相同的值。該值可以打開或關閉,只要每個區域的值相同即可。要設置保護模式設置,請從工具菜單中選擇「Internet選項...」,然後單擊安全選項卡。對於每個區域,在標籤爲「啓用保護模式」的選項卡底部會出現一個複選框。

+0

嗨維克拉姆,我的困惑是,我沒有像以前那樣初始化它。另外,我對Java不太瞭解,所以我不確定如何將它轉換爲Python。 – Keith

+0

嘿檢查IE設置 – vkrams