Bypassare lo schermo anti-bot

- Biscotti
- Impronta del browser
- Intestazioni dell'ultima richiesta HTTP effettuata dal riquadro della finestra principale
Questa tecnologia si basa sul nostro Modelli AntiGate, tranne per il fatto che gestiamo noi stessi i modelli e li teniamo aggiornati. L'utilizzo di questo tipo di attività richiede un abbonamento, con un costo di 5 crediti per ogni attività. I prezzi degli abbonamenti partono da 9,90 dollari al mese con 5.000 bypass inclusi. Se non volete acquistarne uno, potete costruire voi stessi un modello usando questo tutorial e continuare a pagare dal vostro saldo al costo di circa 0,002 dollari per compito.
Sono accettati solo proxy di alta qualità, nessun nome di host, nessun "proxy residenziale", nessun pool di proxy condivisi. Affittare un VPS in USA/Europa e installare un server SQUID con il nostro istruzioni funzionerà sempre. I proxy vengono controllati per velocità e compatibilità prima dell'esecuzione delle attività. Devono avere un tempo di risposta veloce, inferiore a 1 secondo, altrimenti i lavoratori annulleranno le attività.
Controllare se un sito web ha uno schermo anti-bot supportato:
Si noti che alcuni schermi anti-bot utilizzano tecniche avanzate di fingerprinting come SSL handshake fingerprinting, in grado di identificare il tipo di client SSL/TLS che si sta connettendo al sito web. Ad esempio, il browser Chrome ha un'impronta digitale, Firefox un'altra e CURL una completamente diversa. Non bisogna confondersi con lo User-Agent, che si trova a un livello inferiore. In questo caso, per utilizzare il nostro servizio, è necessario utilizzare la stessa istanza del browser per ricostruire la sessione del nostro lavoratore. Poiché la maggior parte dei nostri lavoratori utilizza il browser Chrome, un pacchetto di NodeJS+Puppeteer+Chromium o Selenium+Chromedriver farà il lavoro. Esempi inclusi.
Oggetto del task
Proprietà | Tipo | Richiesto | Scopo |
---|---|---|---|
type | Stringa | Sì | AntiBotCookieTask |
websiteURL | Stringa | Sì | Indirizzo di una pagina web bersaglio dove navigherà il nostro lavoratore. |
proxyAddress | Stringa | Sì | L'indirizzo IP del proxy ipv4/ipv6. Nessun host name né indirizzo IP dalle reti locali. |
proxyPort | Numero intero | Sì | Porta del proxy |
proxyLogin | Stringa | Sì | Accesso per il proxy che richiede l'autorizzazione (basico) |
proxyPassword | Stringa | Sì | Password del proxy |
Esempio di richiesta
#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)
Oggetto soluzione task
Proprietà | Tipo | Scopo |
---|---|---|
cookies | Oggetto | Cookie della pagina dietro lo schermo anti-bot. Unirli tutti insieme e utilizzarli nelle richieste HTTP. |
localStorage | Oggetto | Simile ai cookie, un oggetto con valori localStorage preso all'ultima pagina. |
fingerprint | Oggetto | Impostazioni delle impronte digitali del browser. Utilizzale assieme con i cookie e localStorage per ricreare nel tuo software la sessione di navigazione del lavoratore. Utilizzare il valore self.navigator.userAgent come user-agent nelle richieste HTTP. |
url | Stringa | URL della pagina dove è terminata l'esecuzione del modello |
lastRequestHeaders | Matrice | Ultime intestazioni di richiesta inviate al sito web dal frame della finestra principale del browser. |
Esempio di risposta
{
"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
}