Заполните имя пользователя и пароль с помощью selenium в python
Как я могу автоматически заполнить имя пользователя и пароль по ссылке ниже:
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")
3 ответа:
driver = webdriver.Chrome(...) username = driver.find_element_by_id("username") password = driver.find_element_by_id("password") username.send_keys("YourUsername") password.send_keys("Pa55worD") driver.find_element_by_name("submit").click()
примечания к вашему коду:
find_element_by_name('Username')
:Username
заглавная не соответствует ничему.Select()
используется для воздействия на выбранный элемент (https://developer.mozilla.org/en-US/docs/Web/HTML/Element/select)
использовать
WebElement.send_keys
метод для имитации ввода ключа.
name
в коде (Username
,Password
) не соответствует фактическомуname
элементов (username
,password
).
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()
Примечание:
- мы используем:
user.clear()
для того, чтобы очистить поле ввода.- для размещения кнопки вы можете использовать любой другой метод, основанный на исходном коде страницы. для получения информации см. расположение элементов