我正在尝试使用Python中的Selenium访问和登录以下网页:
'http://games.espn.com/ffl/leagueoffice?leagueId=579054&seasonId=2018'
当访问页面时,会出现一个弹出窗口,询问用户的凭据。下面的代码就是我目前所掌握的代码。在
import time
from selenium import webdriver
user = 'test_user'
pw = '*********'
url = 'http://games.espn.com/ffl/leagueoffice?leagueId=579054&seasonId=2018'
driver = webdriver.Chrome("C:\\Users\\abc\\Downloads\\chromedriver\\chromedriver.exe")
driver.get(url)
obj = driver.switch_to_alert
time.sleep(5)
obj.find_element_by_name('email').send_keys(user)
obj.find_element_by_name('password').send_keys(pw)
当我运行它时,我收到以下错误:
^{pr2}$基于其他stackoverflow线程,我认为我正确地处理了这个问题。有人能帮我吗?在
试试看:
也不要用时间。睡觉()selenium中的模块,保持使用显式等待的习惯。在
您试图与之交互的元素位于另一帧中。使用inspector可以看到它们在
<iframe id="disneyid-iframe" name="disneyid-iframe"
内因此,在执行任何操作之前,您需要切换到该帧:
driver.switch_to_frame("disneyid-iframe")
然后执行您需要的操作(注意:我更正了定位器以使用type属性,因为我没有看到元素具有name属性)
在与该框架中的元素交互后,请记住切换回默认上下文:
driver.switch_to.default_content()
相关问题 更多 >
编程相关推荐