В приведенном ниже примере я покажу вам, как использовать Selenium для работы с GoLogin. Технология GoLogin позволяет вам использовать браузер Orbita, где вы можете использовать уникальные снимки браузера через кукловод. Путем настройки профилей на странице Selenium for work with GoLogin. GoLogin technology allows you to use the Orbita browser, where you can use the unique browser snapshots through puppeteer. By setting up profiles on the gologin.com веб-сайт вы можете эмулировать различные устройства, платформы, разрешение экрана, геолокацию, часовой пояс, доступность WebRTC, указать свои прокси или прокси-серверы требуемой страны и т. д. В то же время файлы cookie и общий отпечаток браузера будут сохранены в профиле, чтобы сайт не требовал повторной авторизации и его можно было изменить другой командой, если вам нужно эмулировать новый браузер. geolocation , timezone, availability of WebRTC , specify your proxies or proxies of the required country, etc. At the same time cookies and a common browser fingerprint will be saved in the profile so that the site does not require re-authorization and it can be changed with another command if you need to emulate a new browser.
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.