2016-01-22 99 views
0

我已經打開瀏覽器,並在隨後的日誌下面的腳本關閉瀏覽器:循環播放硒Python腳本

from selenium import webdriver 
browser=webdriver.Ie() 
import time 

x=4 
for i in range(x):  
    browser.get("http://localhost:8080/customercareweb-prototype/") 
    username=browser.find_element_by_xpath(".//*[@placeholder='Username']").send_keys("op1") 
    password=browser.find_element_by_xpath(".//*[@placeholder='Password']").send_keys("op1") 
    time.sleep(2) 
    browser.find_element_by_xpath(".//*[@class='dlg-auth-button z-button']").click() 
    browser.close() 

當我運行此我得到的錯誤:TypeError: string indices must be integers

我在做什麼這裏錯了。我只想讓這個腳本連續運行4次。

+0

哪一行會引發錯誤?另外,我想你可能需要刪除'username ='和'password ='(我不認爲'send_keys'返回一個值)。 – cxw

+0

請發佈相關追蹤。我懷疑它可能與您的代碼無關,但是在硒綁定中存在問題。謝謝。 – alecxe

回答

0

我設法讓它工作包裝它我的功能。但我仍然不明白爲什麼我不能用簡單的「for」語句來做到這一點。

def login(): 
browser=webdriver.Ie()  
browser.get("http://localhost:8080/customercareweb-prototype/") 
username=browser.find_element_by_xpath(".//*[@placeholder='Username']").send_keys("op1") 
password=browser.find_element_by_xpath(".//*[@placeholder='Password']").send_keys("op1") 
time.sleep(2) 
browser.find_element_by_xpath(".//*[@class='dlg-auth-button z-button']").click() 

i=login() 
for i in range(1): 
login()