Anti-bot scherm omzeilen

- Cookies
- Browser vingerafdruk
- Headers van een laatste HTTP verzoek gemaakt vanuit het hoofdvenster frame
Deze technologie is gebouwd op onze AntiGate sjablonen, behalve dat we de sjablonen zelf beheren en up-to-date houden. Voor het gebruik van dit type taak is een abonnement nodig, met een kostprijs van 5 credits voor elke taak. Abonnementsprijzen beginnen vanaf $9,90 per maand met 5.000 bypasses inbegrepen. Als u er geen wilt kopen, kunt u zelf een sjabloon bouwen met deze handleiding en blijven betalen uit uw saldo tegen kosten van ongeveer $0,002 per taak.
Alleen proxies van hoge kwaliteit worden geaccepteerd, geen hostnamen, geen "residentiële proxies", geen gedeelde proxy pools. Het huren van een VPS in USA/Europa en het installeren van een SQUID server met onze instructies zal altijd werken. Proxies worden gecontroleerd op snelheid en compatibiliteit voordat de taak wordt uitgevoerd. Ze moeten een snelle reactietijd van minder dan 1 seconde hebben, anders zullen de werkers uw taken annuleren.
Controleer of een website een anti-botscherm heeft:
Merk op dat sommige anti-bot schermen gebruik maken van geavanceerde fingerprinting technieken zoals SSL handshake fingerprinting, die kunnen identificeren welk soort SSL/TLS client verbinding maakt met de website. De Chrome browser heeft bijvoorbeeld één vingerafdruk, Firefox een andere en CURL een heel andere. Verwar jezelf niet met een User-Agent, dat is iets op een lager niveau. In dit geval zul je, om onze dienst te kunnen gebruiken, dezelfde browserinstantie moeten gebruiken om de sessie van onze werker te reconstrueren. Aangezien de meeste van onze medewerkers de Chrome browser gebruiken, zal een bundel van NodeJS+Puppeteer+Chromium of Selenium+Chromedriver het werk doen. Voorbeelden.
Taak object
Eigenschap | Type | Verplicht | Doel |
---|---|---|---|
type | String | Ja | AntiBotCookieTask |
websiteURL | String | Ja | Adres van een doel webpagina waar onze medewerker heen zal navigeren. |
proxyAddress | String | Ja | Proxy IP-adres ipv4/ipv6. Geen hostnamen of IP-adressen van lokale netwerken. |
proxyPort | Integer | Ja | Proxy poort |
proxyLogin | String | Ja | Login voor proxy die autorisatie vereist (basis) |
proxyPassword | String | Ja | Proxy wachtwoord |
Voorbeeld aanvraag
#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)
Taak oplossing object
Eigenschap | Type | Doel |
---|---|---|
cookies | Object | Cookies van de pagina achter het anti-bot scherm. Voeg ze allemaal samen en gebruik ze in je HTTP-verzoeken. |
localStorage | Object | Net als bij cookies, een object met localStorage waarden die op de laatste pagina zijn opgehaald. |
fingerprint | Object | Browser fingerprint parameters. Gebruik ze samen met cookies en localStorage om de browsersessie van de werknemer opnieuw te maken in uw software. Gebruik de waarde self.navigator.userAgent als user-agent in uw HTTP-verzoeken. |
url | String | URL van de pagina waar de uitvoering van het sjabloon werd beëindigd |
lastRequestHeaders | Reeks | Laatste verzoekheaders die vanuit het hoofdvenster van de browser naar de website zijn gestuurd. |
Voorbeeld reactie
{
"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
}