СайтостроениеСекреты вебмастера

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

Автоматизированная система входа на сайт с 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 для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

Back to top button