2013-08-31 91 views
2

我正在嘗試使用Python打開一個IE實例,導航到特定的站點並輸入登錄憑據。我目前正在努力使IEC工作,但我也接受其他做同樣事情的選擇。Python和Internet Explorer(特定網站)

我有麻煩的最後一部分(登錄),因爲「按鈕」似乎不被認爲是這樣的。它似乎是某種觸發器作爲一個按鈕(角色=「按鈕」)?我不是很熟悉:

<a title="Click here to log in." class="focus-parent ajax-request need-focus-pageobject" role="button" href="../MyAccount/MyAccountUserLogin.asp?Referrer=&AjaxRequest=true"> 

這是我曾嘗試代碼:

import IEC 

ie = IEC.IEController() 
ie.Navigate('https://efun.toronto.ca/torontofun/Start/Start.asp') 
ie.PollWhileBusy() 
# code after here does not work properly 
ie.Navigate('https://efun.toronto.ca/torontofun/MyAccount/MyAccountUserLogin.asp?Referrer=&AjaxRequest=true') 
ie.ClickButton(caption='toolbar-login') 
ie.SetInputValue('ClientBarcode', '123') 
ie.SetInputValue('AccountPIN', 'XYZ') 
ie.ClickButton(name='Enter') 

我想知道關於如何在這種情況下,打開登錄菜單提示。

回答

0

你試過selenium

from selenium import webdriver 
driver = webdriver.Ie() 

login_btn = driver.find_element_by_id("toolbar-login") 
login_btn.send_keys(Keys.RETURN) 

user_name = driver.find_element_by_id("ClientBarcode") 
user_name.sendKeys("user") 
user_name.sendKeys(Keys.RETURN) 
+0

感謝您的回覆。我看到硒,但沒有嘗試過。我想要一些可以直接控制IE的東西,我不認爲硒可以做到這一點。 (我認爲這主要是使用文本回復等自動化過程)我誤解了硒的能力? – Roberto

+0

我不確定這個問題,但沒有提到這個問題,所以我認爲硒可能是一個選擇 –