close menu
Підтримувані типи завдань
Методи API
Статті
GitHub icon
GitHub
Menu

Обхід антиботового екрану

Це тип завдання, коли наш працівник переходить на веб-сторінку за вашим вибором, обходить будь-який анти-бот екран, захоплює файли cookie та повертає їх до вашого додатку. Потім ви можете використовувати ці файли cookie для вільної навігації на цьому веб-сайті за допомогою вашої улюбленої мови програмування. Для успішного обходу такого роду сторінок, що відловлюють ботів, вам також знадобиться значення User-Agent браузера нашого працівника та надання нам проксі хорошої якості. Без проксі цей метод не спрацює, оскільки всі анти-бот рішення зіставляють свої куки з IP-адресою відвідувача і його User-Agent.
Приклад екрану з анти-ботами
Те, за що ми хапаємося на останній сторінці:
  • Печиво
  • Відбиток пальця браузера
  • Заголовки останнього HTTP-запиту, зробленого з фрейму головного вікна

Ця технологія побудована на нашій Шаблони AntiGate, за винятком того, що ми самі керуємо шаблонами та підтримуємо їх в актуальному стані. Використання цього типу завдань потребуватиме підписка, з вартістю 5 кредитів за кожне завдання. Ціни на підписку починаються від $9.90 на місяць з включеними 5,000 обходів. Якщо ви не хочете купувати його, ви можете створити шаблон самостійно, використовуючи цей навчальний посібник, і продовжувати платити зі свого балансу за вартістю близько $0,002 за завдання.

Весь процес контролюється плагіном для браузера, який наші співробітники встановлюють перед отриманням завдання. Вони нічого не роблять вручну, в основному автоматично відкривається нова вкладка з увімкненим проксі, переходить на обрану вами сторінку, чекає, поки пройде анти-бот екран, перехоплює дані, закриває вкладку і передає дані вашому додатку через API.

Приймаються тільки якісні проксі, ніяких імен хостів, ніяких "резидентних проксі", ніяких загальних проксі-пулів. Оренда VPS в США/Європі і установка SQUID сервера з нашими інструкції завжди буде працювати. Перед виконанням завдання проксі-сервери перевіряються на швидкість і сумісність. Вони повинні мати швидкий час відгуку нижче 1 секунди, інакше працівники скасують ваші завдання.

Перевірте, чи підтримує сайт анти-бот:

Ця версія ще не підтримується. Зверніться до нас через тікети, щоб отримати підтримку.

Зверніть увагу, що деякі екрани для захисту від ботів використовують просунуті методи відбитків пальців, такі як SSL handshake fingerprinting, які можуть визначити, який тип SSL/TLS-клієнта з'єднується з веб-сайтом. Наприклад, браузер Chrome має один відбиток, Firefox - інший, а CURL - зовсім інший. Не плутайте себе з User-Agent, це щось на нижчому рівні. У цьому випадку, щоб скористатися нашим сервісом, вам потрібно буде використовувати той самий екземпляр браузера для реконструкції сесії нашого працівника. Оскільки більшість наших працівників використовують браузер Chrome, набір NodeJS+Puppeteer+Chromium або Selenium+Chromedriver зробить цю роботу. Приклади додаються.

Об'єкт завдання

ВластивістьТипОбов’язковоПризначення
typeРядокТакAntiBotCookieTask
websiteURLРядокТакАдреса цільової веб-сторінки, на яку буде переміщатися наш працівник.
proxyAddressРядокТакIP-адреса проксі-сервера ipv4/ipv6. Немає імен хостів або IP-адрес з локальних мереж.
proxyPortЦілочисельнийТакПроксі-порт
proxyLoginРядокТакВхід для проксі-сервера, який вимагає авторизації (базовий)
proxyPasswordРядокТакПароль проксі

Приклад запиту

Python
Javascript
PHP
#pip3 install anticaptchaofficial

from anticaptchaofficial.antibotcookietask import *
import requests

solver = antibotcookieTask()
solver.set_verbose(1)
solver.set_key("API_KEY_HERE")
solver.set_website_url("https://www.somewebsite.com/")
solver.set_proxy_address("1.2.3.4")
solver.set_proxy_port(3128)
solver.set_proxy_login("login")
solver.set_proxy_password("password")

# Specify softId to earn 10% commission with your app.
# Get your softId here: https://anti-captcha.com/clients/tools/devcenter
solver.set_soft_id(0)

result = solver.solve_and_return_solution()
if result == 0:
    print("could not solve task")
    exit()

print(result)

cookies, localStorage, fingerprint = result["cookies"], result["localStorage"], result["fingerprint"]

if len(cookies) == 0:
    print("empty cookies, try again")
    exit()

cookie_string = '; '.join([f'{key}={value}' for key, value in cookies.items()])
user_agent = fingerprint['self.navigator.userAgent']
print(f"use these cookies for requests: {cookie_string}")
print(f"use this user-agent for requests: {user_agent}")

s = requests.Session()
proxies = {
  "http": "http://login:password@1.2.3.4:3128",
  "https": "http://login:password@1.2.3.4:3128"
}
s.proxies = proxies

content = s.get("https://www.somewebsite.com/", headers={
    "Cookie": cookie_string,
    "User-Agent": user_agent
}).text
print(content)

Об’єкт рішення завдання

ВластивістьТипПризначення
cookiesОб'єктФайли cookie зі сторінки, що знаходиться за екраном анти-ботів. Об'єднайте їх усі разом і використовуйте у своїх HTTP-запитах.
localStorageОб'єктПодібно до файлів cookie, об’єкт зі значеннями localStorage захоплений на останній сторінці.
fingerprintОб'єктПараметри цифрового відбитку браузера. Використовуйте їх разом із файлами cookie та localStorage, щоб відтворити сеанс робочого браузера у вашому програмному забезпеченні.
Використовуйте значення "self.navigator.userAgent" в якості агента користувача у своїх HTTP-запитах.
urlРядокURL сторінки, на якій було завершено виконання шаблону
lastRequestHeadersМасивЗаголовки останніх запитів, які були надіслані на сайт з фрейму головного вікна браузера.

Приклад відповіді

{
    "errorId": 0,
    "status": "ready",
    "solution": {
        "cookies": {
            "some_antibotcookie": "0A8VO9NX5N1s4LRoS4sJlFTCNzLj0dEfA_2whUh0E6ZjgQtM~I1cV7U2IhQx0~jnowNjg-Oi76b-MjYPd1GQAmIxh5-v~33PI8F",
            "maybe_another_id": "join_all_cookies_together"
        },
        "localStorage": {
            "some_value": "Might be used too in the future as a method to 'remember' visitors, so we collect it too.",
            "what_is_it": "localStorage is a more complex analogue of cookies, allowing to store larger objects in browser memory"
        },
        "fingerprint": {
            "self.navigator.userAgent": "Mozilla\/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/101.0.0.0 Safari\/537.36",
            "self.screen.width": 1280,
            "self.screen.height": 768,
            "self.screen.availWidth": 1280,
            "self.screen.availHeight": 768,
            "self.screen.availLeft": 0,
            "self.screen.availTop": 25,
            "self.navigator.vendorSub": "",
            "self.navigator.productSub": "20030107",
            "self.navigator.vendor": "Google Inc.",
            "self.navigator.maxTouchPoints": 0,
            "self.navigator.hardwareConcurrency": 8,
            "self.navigator.cookieEnabled": true,
            "self.navigator.appCodeName": "Mozilla",
            "self.navigator.appName": "Netscape",
            "self.navigator.appVersion": "5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/101.0.0.0 Safari\/537.36",
            "self.navigator.platform": "MacIntel",
            "self.navigator.product": "Gecko",
            "self.navigator.language": "en-US",
            "self.navigator.onLine": true,
            "self.navigator.deviceMemory": 4
        },
        "url": "https://www.thewebsite.com/some/final/path/after_redirects",
        "lastRequestHeaders": [
            "sec-ch-device-memory: 8",
            "sec-ch-ua: \" Not A;Brand\";v=\"99\", \"Chromium\";v=\"101\", \"Google Chrome\";v=\"101\"",
            "sec-ch-ua-mobile: ?0",
            "sec-ch-ua-arch: \"x86\"",
            "sec-ch-ua-platform: \"macOS\"",
            "sec-ch-ua-model: \"\"",
            "sec-ch-ua-full-version-list: \" Not A;Brand\";v=\"99.0.0.0\", \"Chromium\";v=\"101.0.5005.115\", \"Google Chrome\";v=\"101.0.5005.115\"",
            "Upgrade-Insecure-Requests: 1",
            "User-Agent: Mozilla\/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/101.0.0.0 Safari\/537.36",
            "Accept: text\/html,application\/xhtml+xml,application\/xml;q=0.9,image\/avif,image\/webp,image\/apng,*\/*;q=0.8,application\/signed-exchange;v=b3;q=0.9",
            "Sec-Fetch-Site: same-origin",
            "Sec-Fetch-Mode: navigate",
            "Sec-Fetch-Dest: document",
            "Referer: https:\/\/somewebsite.com\/",
            "Accept-Encoding: gzip, deflate, br",
            "Accept-Language: en-US,en;q=0.9",
            "Cookie: some_antibotcookie=0A8VO9NX5N1s4LRoS4sJlFTCNzLj0dEfA_2whUh0E6ZjgQtM~I1cV7U2IhQx0~jnowNjg-Oi76b-MjYPd1GQAmIxh5-v~33PI8F"
        ]
    },
    "cost": "0.00858",
    "ip": "5.25.11.114",
    "createTime": 1637841143,
    "endTime": 1637841189,
    "solveCount": 0
}