我正在尝试使用以下脚本自动登录网页:
from selenium import webdriver
from selenium.webdriver.support import ui
from selenium.webdriver.common.keys import Keys
def page_is_loaded(driver):
return driver.find_element_by_tag_name("body") != None
driver = webdriver.Firefox()
driver.get("http://blabla.htm")
wait = ui.WebDriverWait(driver, 10)
wait.until(page_is_loaded)
email_field = driver.find_element_by_id("sap-user")
email_field.send_keys("foo")
password_field = driver.find_element_by_id("sap-password")
password_field.send_keys("blabla")
password_field.send_keys(Keys.RETURN)
代码运行良好。在下一步中,我想在登录完成后打开 Firefox 窗口。你能帮忙吗? 我正在尝试:
driver.open()
最佳答案
该问题是由于错误的缩进引起的。以下代码具有所需的结果:
from selenium import webdriver
from selenium.webdriver.support import ui
from selenium.webdriver.common.keys import Keys
def page_is_loaded(driver):
return driver.find_element_by_tag_name("body") != None
driver = webdriver.Firefox()
driver.get("http://blabla.htm")
wait = ui.WebDriverWait(driver, 10)
wait.until(page_is_loaded)
email_field = driver.find_element_by_id("sap-user")
email_field.send_keys("foo")
password_field = driver.find_element_by_id("sap-password")
password_field.send_keys("blabla")
password_field.send_keys(Keys.RETURN)
page_is_loaded()
关于Python自动登录网页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36597385/