Авторегистрация на сайте с Selenium и Python
Здравствуйте! Бывает что при регистрации на странице нужно заполнить множество полей. А что если данную процедуру приходится выполнять много раз.
Конечно же автозаполнение полей сэкономило бы нам много времени.
В сегодняшней статье мы реализуем авторегистрацию на сайте с Python и Selenium webdriver.
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
import time
class TestMyrusakov():
def setup_method(self):
# инициализация selenium webdriver
self.driver = webdriver.Chrome()
def teardown_method(self):
# метод закрытия сессии браузера
self.driver.quit()
def test_myrusakov(self):
# открываем страницу по адресу
self.driver.get("https://myrusakov.ru/register.html")
# установка размеров окна
self.driver.set_window_size(1067, 574)
# фокусируем курсор на поле
self.driver.find_element(By.ID, "name").click()
# вводим в поле значение Кирилл
self.driver.find_element(By.ID, "name").send_keys("Кирилл")
# тоже и для остальных полей
# поле login
self.driver.find_element(By.ID, "login").click()
self.driver.find_element(By.ID, "login").send_keys("User2022")
# поле email
self.driver.find_element(By.ID, "email").click()
self.driver.find_element(By.ID, "email").send_keys("xxx@jjj.com")
# поле пароля
self.driver.find_element(By.ID, "password").click()
self.driver.find_element(By.ID, "password").send_keys("123456789")
# подтверждение пароля
self.driver.find_element(By.ID, "password_conf").click()
self.driver.find_element(By.ID, "password_conf").send_keys("123456789")
# клик по капче, не всегда успешен
self.driver.find_element(By.CSS_SELECTOR, ".recaptcha-checkbox-border").click()
#
self.driver.switch_to.default_content()
# клик по кнопке регистрации
self.driver.find_element(By.CSS_SELECTOR, ".center:nth-child(8) > input").click()
# закрытие окна браузера
self.driver.close()
register = TestMyrusakov()
register.setup_method()
register.test_myrusakov()
register.teardown_method()
Таким образом, мы заполнили все поля на сайте при помощи Python и Selenium webdriver.