Загрузка...

Гайд автоматизации Dolphin Anty

Тема в разделе Python создана пользователем neurodev 23 мар 2023. (поднята 14 июл 2025) 3035 просмотров

  1. neurodev
    neurodev Автор темы 23 мар 2023 Разработка — https://lolz.live/threads/4379734/ 573 22 сен 2022
    Не ебу зачем, но пусть будет.

    Получаем токен от аккаунта: тут

    [IMG]

    Для начала нам нужно написать функцию которая будет слать запрос на получение id профилей.​
    Python
    # Запрос на ID профилей
    def get_id_profile():
    all_profile = [] # Создаем список для id

    headers: dict = {
    'Authorization': 'Bearer TOKEN', # Тут указываем свой токен
    }

    req = requests.get('https://anty-api.com/browser_profiles', headers=headers).json()
    for i in req['data']:
    all_profile.append(i['id']) # Помещаем в список, каждый профиль

    logger.debug(f'Обнаружил профилей: {len(all_profile)}')
    return all_profile
    Дальше нам нужно скачать антидетекст хром драйвер, его скачать можно тут

    Ну и расписывать я дахуя не буду, кому надо тот разберется, скажу только то, что антик работает через локальный порт: 3001, для запуска автоматизации, антик должен быть запущен.
    Python
    def init_browser(all_profile):
    count = -1
    for profile in all_profile:
    try:
    count += 1
    logger.debug(f'Запускаю профиль: {profile}')
    # Запрос на запуск браузера
    req = requests.get(f'http://localhost:3001/v1.0/browser_profiles/{profile}/start?automation=1')
    # Преобразовываем в json str
    response_json = req.json()

    # Получаем порт из json
    port = response_json['automation']['port']

    # Директория к кастомному хром драйверу от Dolphin Anty
    path = Service('files/chromedriver-windows-x64.exe') # ТУТ УКАЗАТЬ СКАЧЕННЫЙ ХРОМ ДРАЙВЕР
    chrome_options = webdriver.ChromeOptions()
    chrome_options.debugger_address = f'127.0.0.1:{port}'

    browser = webdriver.Chrome(service=path, chrome_options=chrome_options)
    # Запрос на закрытие профиля
    requests.get(f'http://localhost:3001/v1.0/browser_profiles/{profile}/stop')
    logger.debug(f'Завершил работу профиля, id: {profile}')
    except KeyError:
    logger.error(f'Ошибка в профиле: {profile}')
    continue
    По итогу всё. Дальше работа идет как в стоковом selenium.
    В примерах используется selenium + loguru + requests
    Python
    from loguru import logger

    import requests

    from selenium import webdriver
    from selenium.webdriver.chrome.service import Service
     
    23 мар 2023 Изменено
  2. ДедушкаПопа
    Спасибо
     
  3. denisssss_inactive
    denisssss_inactive 23 мар 2023 Рублевка тим, работаем 70 321 10 авг 2018
    Вот это хорошо, спасибо за статью
     
  4. j0ker_zhenik
    кто шарит, почему код не работает? после запуска просто заканчивается выполнение сразу без ошибок
     
    1. bazan
  5. mrtl
    mrtl 16 апр 2024 218 10 мар 2019
    как элемент найти? login_form = browser.find_element(By.XPATH, "/html/body/form[1]") не работает
     
Загрузка...
Top