Популярные темы: Multilogin X, Multilogin 6, Подписки и платежи,
CookieRobot для Multilogin X
Содержание
Долгожданный CookieRobot для Multilogin X уже здесь 🔥 В этом руководстве мы покажем вам, как использовать его для ускорения процесса прогрева вашего профиля без особых усилий. CookieRobot может пройти по каждому указанному сайту и собрать как можно больше файлов cookie, что сделает ваш профиль более реалистичным! ✨
CookieRobot работает через наш эндпоинт Script Runner ⚡ Узнайте, как его использовать, здесь Script Runner.
Script Runner доступен с агентом версии 1.37.4 и новее.
Настройка Script Runner с CookieRobot
Даже без опыта работы со скриптами, Script Runner позволит вам выполнять массовые задачи быстро и просто!
Чтобы запустить скрипт CookieRobot, необходимо вызвать URL эндпоинта Script Runner: https://launcher.mlx.yt:45001/ api /v1/run_script
Чтобы запустить CookieRobot, нужно отправить запрос к URL Script Runner. В теле запроса (JSON) укажите данные, как в примере ниже:
{
"script_file": "cookie_robot.py",
"profile_ids": [
{
"profile_id": "profile uuid"
},
{
"profile_id": "profile uuid",
"is_headless": true
}
],
"script_params": [
{
"name": "websites",
"value": ["https://youtube.com","https://google.com","https://fb.com","https://amazon.com"]
},
{
"name": "randomOrder",
"value": true
},
{
"name": "countMode",
"value": 0.7
},
{
"name": "processCookieConsent",
"value": true
}
]
}
Custom-параметры
Следуя примеру выше, вы можете настроить следующие параметры:
“script_file”
Имя файла скрипта CookieRobot в вашем каталоге (пример: cookie_robot.py
). Скрипты по умолчанию хранятся в следующих каталогах:
- Windows:
C:\Users\%username%\mlx\deps\scripts
- macOS:
/Users/%username%/mlx/scripts
- Linux:
/home/%username%/mlx/scripts
“profile_ids”
Список, содержащий ID профилей, структурированный следующим образом:
-
“profile_id”
— уникальный ID профиля. -
“is_ headless ”
— (необязательно) работа в режиме headless может ограничить взаимодействие бота с определенными элементами страницы.
“script_params”
Список, содержащий набор настраиваемых параметров, обозначенных как:
-
“name”
— имя параметра. -
“value”
— присвоенное значение (строка, целое число, число с плавающей точкой, JSON и т. д.).
“websites”
Если в параметре “websites”
ничего не указано, робот будет использовать список по умолчанию:
websites = [
"https://aliexpress.com",
"https://amazon.com",
"https://ebay.com",
"https://fiverr.com",
"https://google.com",
"https://reddit.com",
"https://twitch.com",
"https://twitter.com",
"https://yahoo.com",
"https://youtube.com",
"https://en.wikipedia.org"
]
“randomOrder”
“fractionMode”
Хотите запустить только часть своих сайтов, а не все? Вот как:
- Выберите число с плавающей точкой от 0,0 до 1,0, чтобы задать долю сайтов для запуска.
- Убедитесь, что
“randomOrder”
установлен на“true”
:- Пример:
fractionMode = “0.5”
→ запускает 50% списка сайтов в случайном порядке.
- Пример:
“processCookieConsent”
На многих сайтах отображается кнопка «Разрешить файлы cookie» из-за законов о конфиденциальности, таких как GDPR (Что такое GDPR?), которые требуют согласия пользователя перед отслеживанием файлов cookie.
- Значение
“true”
→ CookieRobot будет автоматически искать и пытаться нажать кнопку согласия (по умолчанию). - Значение
“false”
→ всплывающие окна cookie будут игнорироваться, что может быть полезно, если:- Вы просматриваете сайты за пределами ЕС, на которых не отображаются баннеры cookie.
- Вас не беспокоит соблюдение GDPR (например, использование прокси-серверов за пределами ЕС).
Хотите увидеть код приложения?
В этом примере параметры настраиваются в объекте payload
внутри функции run_script()
:
- CookieRobot будет работать через файл
cookie_robot.py
. - Используемые ID профилей будут установлены на
ced16576-a67b-4ae5-8459-c07991d50f27
иec0cf95f-b199-4b1c-b394-af1e01ac9c09
. - Оба профиля будут работать в не-headless режиме.
- Сайты — Yahoo.com и Amazon.com, и они будут посещаться в случайном порядке.
- Поскольку значение
fractionMode
равно 1, будут посещены 100% перечисленных сайтов. - CookieRobot автоматически примет уведомления о согласии на использование файлов cookie, если они появятся.
import logging
import requests
import json
# In project root you need a file called token with your auth token in there
def setup_logging():
"""Set up logging configuration."""
logging.basicConfig(
level=logging.INFO,
format="%(asctime)s - %(levelname)s - %(message)s",
handlers=[
logging.FileHandler("script_runner.log"),
logging.StreamHandler()
]
)
def get_token_from_file():
"""Read the token from a file called 'token' in the project root."""
try:
with open("token", "r") as file:
token = file.read().strip()
return token
except FileNotFoundError:
logging.error("Token file not found in the project root.")
raise
except Exception as e:
logging.error("An error occurred while reading the token file: %s", str(e))
raise
def run_script():
url = "https://launcher.mlx.yt:45001/api/v1/run_script"
headers = {
"Content-Type": "application/json",
"Authorization": f"Bearer {get_token_from_file()}"
}
payload = {
"script_file": "cookie_robot.py",
"profile_ids": [
{
"profile_id": "ced16576-a67b-4ae5-8459-c07991d50f27",
"is_headless": False
},
# {
# "profile_id": "ec0cf95f-b199-4b1c-b394-af1e01ac9c09",
# "is_headless": False
# },
],
"script_params": [
{
"name": "websites",
"value": ["yahoo.com", "amazon.com"]
},
{
"name": "randomOrder",
"value": True
},
{
"name": "fractionMode",
"value": 1
},
{
"name": "processCookieConsent",
"value": True
}
]
}
try:
logging.info("Payload to send: %s", json.dumps(payload, indent=4))
logging.info("Sending request to the script runner endpoint...")
response = requests.post(url, headers=headers, data=json.dumps(payload), timeout=30)
if response.status_code == 200:
logging.info("Script executed successfully.")
logging.info("Response: %s", response.json())
else:
logging.error("Failed to execute script. Status code: %d", response.status_code)
logging.error("Response: %s", response.text)
except requests.exceptions.RequestException as e:
logging.error("An error occurred while making the request: %s", str(e))
if __name__ == "__main__":
setup_logging()
run_script()