Contournement de l'écran anti-bot
- Cookies
- Empreinte digitale du navigateur
- En-têtes de la dernière requête HTTP effectuée à partir du cadre de la fenêtre principale.
Cette technologie s'appuie sur notre technologie Modèles AntiGate, sauf que nous gérons nous-mêmes les modèles et que nous les tenons à jour. L'utilisation de ce type de tâche nécessitera un abonnement, avec un coût de 5 crédits pour chaque tâche. Les prix d'abonnement commencent à partir de $9.90 par mois avec 5,000 contournements inclus. Si vous n'avez pas envie d'en acheter un, vous pouvez créer un modèle vous-même avec ce tutoriel et continuer à payer à partir de votre solde au prix d'environ $0.002 par tâche.
Seuls les proxys de haute qualité sont acceptés, pas de noms d'hôtes, pas de "proxys résidentiels", pas de pools de proxy partagés. La location d'un VPS aux Etats-Unis/Europe et l'installation d'un serveur SQUID avec nos instructions fonctionnera toujours. La vitesse et la compatibilité des proxys sont vérifiées avant l'exécution de la tâche. Ils doivent avoir un temps de réponse rapide, inférieur à 1 seconde, sinon les travailleurs annuleront vos tâches.
Vérifiez si un site Web est doté d'un écran anti-bot :
Notez que certains écrans anti-bots utilisent des techniques d'empreintes digitales avancées telles que l'SSL handshake fingerprinting, qui permet d'identifier le type de client SSL/TLS qui se connecte au site web. Par exemple, le navigateur Chrome a une empreinte digitale, Firefox une autre et CURL une toute autre. Ne vous embrouillez pas avec un User-Agent, c'est quelque chose à un niveau inférieur. Dans ce cas, pour utiliser notre service, vous devrez utiliser la même instance de navigateur pour reconstruire la session de notre travailleur. Comme la plupart de nos travailleurs utilisent le navigateur Chrome, un paquet de NodeJS+Puppeteer+Chromium ou Selenium+Chromedriver fera l'affaire. Exemples inclus.
Objet de tâche
Propriété | Type | Obligatoire | Objectif |
---|---|---|---|
type | String | Oui | AntiBotCookieTask |
websiteURL | String | Oui | Adresse d'une page Web cible où notre travailleur naviguera. |
proxyAddress | String | Oui | Adresse IP proxy ipv4/ipv6. Aucun nom d'hôte ou adresse IP des réseaux locaux. |
proxyPort | Integer | Oui | Port du proxy |
proxyLogin | String | Oui | Connexion pour proxy qui nécessite une autorisation (de base) |
proxyPassword | String | Oui | Mot de passe proxy |
Exemple de demande
#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)
Objet de solution de tâche
Propriété | Type | Objectif |
---|---|---|
cookies | Object | Cookies de la page derrière l'écran anti-bot. Joignez-les tous ensemble et utilisez-les dans vos requêtes HTTP. |
localStorage | Object | Semblable aux cookies, un objet avec des valeurs localStorage saisi à la dernière page. |
fingerprint | Object | Paramètres d'empreinte du navigateur. Utilisez-les avec des cookies et localStorage pour recréer la session de navigateur du travailleur dans votre logiciel. Utilisez la valeur "self.navigator.userAgent" comme user-agent dans vos requêtes HTTP. |
url | String | URL de la page où l'exécution du modèle s'est terminée |
lastRequestHeaders | Array | Derniers en-têtes de demande qui ont été envoyés au site web depuis le cadre de la fenêtre principale du navigateur. |
Exemple de réponse
{
"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
}