如何使用 Python 和 Selenium 自动登录一个据说不可见的元素



我目前正在编写一个脚本,并已成功使用Selenium和python打开浏览器并导航到我将提供的网站上的登录屏幕。但是当我输入这两个脚本中的任何一个时,它都不起作用。它只是说登录不可见。有人可以告诉我如何使用Pythong和Selenium吗?

# fill in username
username = browser.find_element_by_id('id_username')
username.send_keys(usernameStr)
nextButton = browser.find_element_by_id('next')
nextButton.click()

甚至使用了这个我发现有人建议

from selenium import webdriver
from selenium.webdriver.common import action_chains
driver = webdriver.Firefox()
driver.maximize_window()
driver.get("https://.com/auth/login/
")
action = action_chains.ActionChains(driver)
login = driver.find_element_by_class_name("login-icon")
login.click()
driver.switch_to.frame(driver.find_element_by_id('custlogin'))
username = driver.find_element_by_id('username')
action.move_to_element(username).perform()
username.send_keys('testeruser')

如果有人能帮助我解决这个问题,我可以愉快地继续下去。感谢任何阅读本文的人。

您使用

定位器策略不会唯一标识username字段。当前定位器策略可识别隐藏字段。要唯一地标识用户名和密码字段,您可以使用以下代码行:

username = browser.find_element_by_xpath("//fieldset[@class='fieldset_main']//input[@id='id_username']")
password = browser.find_element_by_xpath("//fieldset[@class='fieldset_main']//input[@id='id_password']")

最新更新