Автоматизированная система входа на сайт с Python и Selenium WebDriver

0

Автоматизированная система входа на сайт с Python и Selenium WebDriver

В сегодняшней статье мы рассмотрим как с помощью вебдрайвера Selenium и Python, автоматически залогиниться на сайте. Нам понадобится скачать Selenium WebDriver для браузера Chrome c сайта https://chromedriver.chromium.org/downloads, а также модуль selenium для работы с драйвером через Python. Версия драйвера должна соответствовать версии браузера Chrome. Для проверки версии Chrome в адресной строке вводим: chrome://settings/help. Далее скачиваем файл в виде .zip архива. Создаем на диске C папку chromedriver и положим в нее извлеченный файл chromedriver.exe.


# установка модуля для взаимодействия с веб-драйвером
pip install selenium==4.*

Создадим файл main.py:


# импорт модулей time и selenium 

import time

from selenium import webdriver
from selenium.webdriver.common.by import By

# инициализация веб-драйвера с полным путем к исполняемому драйверу
driver = webdriver.Chrome('C:chromedriverchromedriver.exe')

# засыпание программы на 2 миллисекунды
time.sleep(2)

# открытие драйвером сайта 
driver.get("https://myrusakov.ru/")
time.sleep(1)

# поиск элементов формы по описанию в html коде
login = driver.find_element(By.NAME, "login")
password = driver.find_element(By.NAME, "password")

# отправка данных в найденные формы
login.send_keys("login")
password.send_keys("password")

time.sleep(1)

# кнопка регистрации ищется драйвером по CSS селектору, указывающему путь в CSS коде к данному элементу
submit_button = driver.find_element(By.CSS_SELECTOR , "#auth input[type="submit"]").click()

# метод click выполняет нажатие по кнопке формы

time.sleep(10)

# окончание работы драйвера
driver.quit()

В результате, при существующем логине и пароле, сайт аутентифицирует нас. Далее возможно автовыполнение некоторых рутинных действий. Драйвер имеет методы поиска не только по имени но и по другим атрибутам html

Следует иметь в виду, что используемые здесь атрибуты не подойдут на других сайтах.

Таким образом, с помощью веб-драйвера Selenium и Python можно выполнять множество действий на сайте.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.