如何使用Python中的Selenium访问弹出登录表单

时间:2015-04-08 13:55:37

标签: python firefox selenium selenium-webdriver

在本练习中,我一直试图找出如何在弹出窗口中输入用户名和密码:

http://pentesteracademylab.appspot.com//lab/webapp/digest

但我对Python中的Selenium全新。我找到了如何点击按钮,以便弹出登录表单:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
driver = webdriver.Firefox()
driver.get("http://pentesteracademylab.appspot.com//lab/webapp/digest")
driver.find_element_by_css_selector('button').click()

但我无法弄清楚如何访问该窗口,更不用说其中的字段了。我读过有关switch_to_frameswitch_to_window的文章。对于Windows,window_handles显示要切换到的活动窗口,但这只返回一个元素,我认为是主窗口,而不是弹出窗口。我也试过

alert = driver.switch_to_alert()

无济于事。问题是我不知道弹出窗口是哪种对象(框架,窗口,警报或其他东西),而且我在网页的HTML代码中找不到任何引用它的名称。

有人能让我更进一步吗?

1 个答案:

答案 0 :(得分:4)

通过访问以下网址传递身份验证步骤:

http://username:password@pentesteracademylab.appspot.com/lab/webapp/digest/1

另见: