Загрузка...

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

Тема в разделе Python создана пользователем cryptocoder 23 мар 2023. (поднята 18 май 2025) 2872 просмотра

Загрузка...
  1. cryptocoder
    cryptocoder Автор темы 23 мар 2023 А без денег хуй соси -- так сложилось на Руси 572 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 Рублевка тим, работаем 69 007 10 авг 2018
    Вот это хорошо, спасибо за статью
     
  4. j0ker_zhenik
    кто шарит, почему код не работает? после запуска просто заканчивается выполнение сразу без ошибок
     
  5. mrtl
    mrtl 16 апр 2024 216 10 мар 2019
    как элемент найти? login_form = browser.find_element(By.XPATH, "/html/body/form[1]") не работает
     
Top