我試圖使用python和selen登錄到http://sports.williamhill.com/bet/en-gb。使用python和selenium登錄網站
這是我到目前爲止已經試過:
from selenium import webdriver
session = webdriver.Chrome()
session.get('https://sports.williamhill.com/bet/en-gb')
# REMOVE POP-UP
timezone_popup_ok_button = session.find_element_by_xpath('//a[@id="yesBtn"]')
timezone_popup_ok_button.click()
# FILL OUT FORMS
usr_field = session.find_element_by_xpath('//input[@value="Username"]')
usr_field.clear()
WebDriverWait(session, 10).until(EC.visibility_of(usr_field))
usr_field.send_keys('myUsername')
pwd_field = session.find_element_by_xpath('//input[@value="Password"]')
pwd_field.clear()
pwd_field.send_keys('myPassword')
login_button = session.find_element_by_xpath('//input[@id="signInBtn"]')
login_button.click()
,我發現了以下錯誤。
selenium.common.exceptions.ElementNotVisibleException: Message: element not visible
當試圖執行
usr_field.send_keys('myUsername')
的usr_field元素似乎如果我與檢查工具查看它是可見的,但我不是100%肯定在這裏。
我在其他網站上成功地使用了這個腳本(有些修改),但是這個讓我很頭痛,而且我似乎無法在網上的任何地方找到答案。
如果有人能幫助我在這裏,將不勝感激!
第一步:啓動一個調試器並找出哪個元件不可見 –
進行一些睡眠以留出元素ti的加載時間。 –
@SamirSadek不要使用睡覺...睡覺是一個不好的習慣。改用'WebDriverWait'。 – JeffC