在python中使用selenium填充用户名和密码

在python中使用selenium填充用户名和密码,python,selenium,Python,Selenium,如何通过以下链接自动填写用户名和密码: from selenium import webdriver from selenium.webdriver.common.keys import Keys chromedriver = 'C:\\chromedriver.exe' browser = webdriver.Chrome(chromedriver) browser.get('http://www.example.com') 之后我真的不知道: username = Select(brow

如何通过以下链接自动填写用户名和密码:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys

chromedriver = 'C:\\chromedriver.exe'
browser = webdriver.Chrome(chromedriver)
browser.get('http://www.example.com')
之后我真的不知道:

username = Select(browser.find_element_by_name('Username'))
password = Select(browser.find_element_by_name('Password'))
username.select_by_visible_text("text")
password.select_by_visible_text("text")
代码注释:

按名称“用户名”查找元素:大写的用户名与任何内容都不匹配。 选择用于作用于选择元素 使用方法模拟键键入

代码用户名、密码中的名称与元素的实际名称用户名、密码不匹配

注:

我们使用user.clear来清除输入字段。 为了定位submit按钮,您可以使用基于页面源代码的任何其他方法。有关详细信息,请参阅
在某些情况下,当元素不可交互时,sendKeys不起作用,您可能会遇到ElementNotInteractivatableException

在这种情况下,您可以选择执行设置值的javascript,然后可以发回

例如:

url='1〕https://www.your_url.com/' 驱动程序=色度可执行路径=。/色度驱动程序 driver.geturl 用户名='your_username' 密码='您的密码' 设置电子邮件输入字段的值 execute_scriptf'var element=document.getElementByIdemail;element.value={username};' 设置密码输入字段的值 execute_scriptf'var element=document.getElementByIdpassword;element.value={password};' 提交表单或同时单击登录按钮 driver.execute_scriptf'document.getElementsByClassNamelogin_表单[0]。提交;' printdriver.page\u源 参考:


我是硒的新手,我尝试了上面所有的解决方案,但都不起作用。 最后,我通过手动方式尝试了这一点

driver = webdriver.Firefox()
import time

driver.get(url)

time.sleep(20)

print (driver.page_source.encode("utf-8"))

然后我可以从网络上获取内容。

嘿,你知道如何阅读提交表单后加载的页面内容吗?我正在为一个网站写测试,我设法提交了表格,现在我迷路了。换句话说,我想获取受限的、仅限成员的登录页的内容。@NinoŠkopac selenium对象的工作方式类似于浏览器。单击后,它将加载新的登录页,以便执行“selenium.find_element_by_idwhere”。还可以阅读关于selenium.implicitly_wait to wait的内容。注意,在上面的回答中,selenium应该是获得的驱动程序句柄,例如,selenium=webdriver。Firefox@xbello非常感谢你!当我尝试此操作时,会出现以下错误:“StatefulBrowser”对象没有属性“find_element_by_name”@AnaClaudia,自从我发布此答案后,api可能已更改。请检查文件。
username = browser.find_element_by_name('username')
username.send_keys('user1')

password = browser.find_element_by_name('password')
password.send_keys('secret')

form = browser.find_element_by_id('loginForm')
form.submit()

# OR  browser.find_element_by_id('submit').click()
user = driver.find_element_by_name("username")
password = driver.find_element_by_name("password")
user.clear()
user.send_keys("your_user_name")
password.clear()
password.send_keys("your_password")
driver.find_element_by_name("submit").click()
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import Select
from selenium.webdriver.support.ui import WebDriverWait

# If you want to open Chrome
driver = webdriver.Chrome()
# If you want to open Firefox
driver = webdriver.Firefox()

username = driver.find_element_by_id("username")
password = driver.find_element_by_id("password")
username.send_keys("YourUsername")
password.send_keys("YourPassword")
driver.find_element_by_id("submit_btn").click()
driver = webdriver.Firefox()
import time

driver.get(url)

time.sleep(20)

print (driver.page_source.encode("utf-8"))