Anulación de la pantalla anti-bot

- Cookies
- Huella digital del navegador
- Cabeceras de una última petición HTTP realizada desde el marco de la ventana principal
Esta tecnología se basa en nuestro Plantillas AntiGate, con la diferencia de que nosotros mismos gestionamos las plantillas y las mantenemos actualizadas. El uso de este tipo de tarea requerirá un suscripción, con un coste de 5 créditos por cada tarea. Los precios de suscripción empiezan a partir de 9,90 $ al mes con 5.000 bypasses incluidos. Si no quieres comprar una, puedes construir una plantilla tú mismo usando este tutorial y seguir pagando de tu saldo a un coste de unos 0,002$ por tarea.
Sólo se aceptan proxies de alta calidad, no nombres de host, no "proxies residenciales", no proxies compartidos. Alquilar un VPS en USA/Europa e instalar un servidor SQUID con nuestro instrucciones siempre funcionará. Se comprueba la velocidad y compatibilidad de los proxies antes de la ejecución de la tarea. Deben tener un tiempo de respuesta rápido por debajo de 1 segundo, de lo contrario los trabajadores cancelarán sus tareas.
Compruebe si un sitio web ha soportado pantalla anti-bot:
Tenga en cuenta que algunas pantallas anti-bot utilizan técnicas avanzadas de fingerprinting como SSL handshake fingerprinting, que pueden identificar qué tipo de cliente SSL/TLS se está conectando al sitio web. Por ejemplo, el navegador Chrome tiene una huella digital, Firefox otra y CURL una completamente diferente. No te confundas con un User-Agent, es algo a un nivel inferior. En este caso para usar nuestro servicio, necesitarás usar la misma instancia de navegador para reconstruir la sesión de nuestro trabajador. Como la mayoría de nuestros trabajadores utilizan el navegador Chrome, un paquete de NodeJS+Puppeteer+Chromium o Selenium+Chromedriver hará el trabajo. Ejemplos incluidos.
Objeto de la tarea
Propiedad | Tipo | Requerido | Propósito |
---|---|---|---|
type | Cadena | Sí | AntiBotCookieTask |
websiteURL | Cadena | Sí | Dirección de una página objetivo donde navegará nuestro trabajador. |
proxyAddress | Cadena | Sí | Dirección IP de proxy ipv4/ipv6. No hay nombres de host o direcciones IP de redes locales. |
proxyPort | Entero | Sí | Puerto del Proxy |
proxyLogin | Cadena | Sí | Usuario para proxy, el cual requiere autorización (básica) |
proxyPassword | Cadena | Sí | Contraseña del Proxy |
Ejemplo de solicitud
#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)
Objeto de solución de la tarea
Propiedad | Tipo | Propósito |
---|---|---|
cookies | Objeto | Cookies de la página detrás de la pantalla anti-bot. Únelas todas juntas y utilízalas en tus peticiones HTTP. |
localStorage | Objeto | Similar a las cookies, es un objeto con valores del localStorage tomadas en la última página. |
fingerprint | Objeto | Parámetros de la respuesta del navegador. Úsala junto con las cookies y localStorage para recrear la sesión del navegador del trabajador en tu software. Utilice el valor self.navigator.userAgent como agente de usuario en sus peticiones HTTP. |
url | Cadena | URL de la página donde terminó la ejecución de la plantilla |
lastRequestHeaders | Arreglo | Últimas cabeceras de solicitud que se enviaron al sitio web desde el marco de la ventana principal del navegador. |
Ejemplo de respuesta
{
"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
}