且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

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

更新时间:2023-02-19 10:56:20

通过访问以下URL:

  http://用户名:password@pentesteracademylab.appspot.com/lab/webapp/digest/1 

另见:


I have been trying for a while to figure out how to enter username and password in the popup-window in this exercise:

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

but I am entirely new to Selenium in Python. I found out how to click the button, so that the login form pops up:

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()

but I cannot figure out how to access that window, let alone the fields in it. I have read about switch_to_frame and switch_to_window. For windows there is the window_handles showing you active windows to switch to, but this only returns a single element, which I believe is the main window, not the pop up. I also tried

alert = driver.switch_to_alert()

to no avail. The problem is that I do not know either which kind of object the popup is (frame,window,alert or something else), and I cannot find any names referring to it in the HTML code for the webpage.

Can anyone take me a step further?

Pass the authentication step by accessing the following URL:

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

See also: