Автоматизация работы браузера с помощью Selenium

Освоить автоматизацию работы с браузером очень просто!

В приведенном ниже примере я покажу вам, как использовать Selenium для работы с Gologin. Технология Gologin позволяет использовать браузер Orbita, в котором вы можете применять уникальные снимки браузера с помощью Puppeteer. Настроив профили на сайте gologin.com, вы можете эмулировать различные устройства, платформы, разрешение экрана, геолокацию, часовой пояс, наличие WebRTC, указывать свои прокси-серверы или прокси-серверы нужной страны и т. д.

При этом в профиле будут сохранены файлы cookie и общий «отпечаток» браузера, чтобы на сайте не требовалась повторная авторизация, а при необходимости имитировать новый браузер его можно будет изменить с помощью другой команды.

Для работы с Selenium требуется Chromedriver. Последняя версия для работы с Gologin находится в репозитории github.com/gologinapp/gologin в каталоге selenium.

Пример приведён на языке Python (версия 3.8)

Ниже приведён полный код парсера. Я рассмотрю основные моменты по отдельности.


import time
from sys import platform
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from gologin import Gologin


gl = Gologin({
 'token': 'yU0token',
 'profile_id': 'yU0Pr0f1leiD',
})

if platform == "linux" or platform == "linux2":
 chrome_driver_path = './chromedriver'
elif platform == "darwin":
 chrome_driver_path = './mac/chromedriver'
elif platform == "win32":
 chrome_driver_path = 'chromedriver.exe'

debugger_address = gl.start()
chrome_options = Options()
chrome_options.add_experimental_option("debuggerAddress", debugger_address)
driver = webdriver.Chrome(executable_path=chrome_driver_path, options=chrome_options)
driver.get("http://www.python.org")
assert "Python" in driver.title
driver.close()
time.sleep(3)
gl.stop()

										

Первым шагом является создание экземпляра класса Gologin. В его параметрах необходимо указать токен доступа и профиль, который мы будем запускать. Исполняемый файл Orbita по умолчанию ищется в каталоге пользователя (это можно переопределить с помощью параметра executablePath):


const GL = new Gologin({
 profile_id: 'yU0Pr0f1leiD',
 token: 'yU0token',
});
										

Затем выдается команда на запуск удаленного браузера, и после получения ссылки она передается в Selenium:


debugger_address = gl.start()
chrome_options = Options()
chrome_options.add_experimental_option("debuggerAddress", debugger_address)
driver = webdriver.Chrome(executable_path=chrome_driver_path, options=chrome_options)
										

Далее перейдите на сайт python.org и убедитесь, что вы оказались в нужном месте:


driver.get("http://www.python.org")
assert "Python" in driver.title

										

Чтобы завершить работу, закройте драйвер и выполните команду остановки профиля

Таким образом, вы сможете использовать Selenium для автоматизации работы с браузером, что обеспечит удобство работы с Gologin.

Читайте также