Scarnox · Blog

reCAPTCHA v3-score uitgelegd: hoe sites bezoekers beoordelen zonder uitdaging

reCAPTCHA v3 toont geen uitdaging. Het draait op de achtergrond van de pagina, observeert de bezoeker en geeft een score van 0,0 tot 1,0, waarbij een hoger getal betekent dat de bezoeker waarschijnlijker een mens is. De backend van de site beslist wat hij met de score doet. Een aanmeldformulier laat een bezoeker bij 0,7 misschien door en blokkeert hem bij 0,3. Ondersteuning van reCAPTCHA v3 bij Scarnox komt binnenkort beschikbaar. Deze gids legt uit hoe de score tot stand komt en welke legitieme manieren er zijn om geautomatiseerd werk niet als bot te laten scoren.

Hoe de score tot stand komt

De pagina laadt het reCAPTCHA-script en roept het aan voor een actie, zoals login of signup. Het script verzamelt signalen in de browser, stuurt die naar Google, en Google geeft een token terug. De server van de site stuurt het token vervolgens naar het verificatie-eindpunt van Google, samen met zijn geheime sleutel, en ontvangt een score en een actienaam.

De score is een risicoschatting die uit verschillende soorten signalen is opgebouwd:

De exacte weging is niet gepubliceerd en verandert. Wat openbaar is, is het contract: de site kiest een drempel, en de score bepaalt de uitkomst.

Waarom geautomatiseerd verkeer laag scoort

Geautomatiseerd verkeer scoort doorgaans laag om voorspelbare redenen. Een headless browser met standaardinstellingen heeft ongewone signalen. Een nieuwe sessie heeft geen geschiedenis. Een snel, regelmatig requestpatroon lijkt niet op een persoon die surft. Datacenteradressen worden met meer wantrouwen behandeld dan thuisverbindingen. Elk daarvan is een signaal, en meerdere samen kunnen de score onder de drempel duwen.

Omdat er geen zichtbare uitdaging is, betekent een lage score vaak een stille mislukking. De pagina laadt, het formulier wordt geweigerd, en niets vertelt je waarom. Bouw je logging zo dat je de fout aan de serverkant ziet.

Legitieme manieren om je score gezond te houden

Deze aanpakken zijn bedoeld voor je eigen werk en voor legitieme dataverzameling:

  1. Gebruik een echt browserprofiel. Een normale browser met gewone instellingen en extensies wordt minder snel als bot gescoord dan een kale headless-build. De gids over browser-fingerprinting legt uit hoe de browseromgeving wordt gelezen.
  2. Houd sessies warm. Bewaar cookies tussen requests, en begin niet elke pagina vanuit een lege staat.
  3. Stem requests af. Menselijke bezoekers laden niet honderd pagina's per seconde. Voeg vertragingen toe en randomiseer ze binnen een redelijke bandbreedte.
  4. Vermijd duidelijke verraders. Standaard user agents, ontbrekende taalinstellingen en inconsistente schermformaten zijn makkelijke signalen om te repareren.
  5. Test tegen je eigen drempel. Beheer je de site zelf, lees dan de score in staging en controleer welke signalen hem omlaag drukken. De testsleutels van Google zijn nuttig om de integratie te testen zonder echte scoring.

Deze stappen verminderen valse positieven bij echt werk. Ze zijn geen manier om een menselijke score te vervalsen voor misbruik, en geen enkele aanpak hier verandert het feit dat de eigenaar van de site de drempel bepaalt.

Wat de score niet doet

De score bewijst niet dat een bezoeker een mens is, en hij vertelt niet waarom een bezoeker laag scoorde. Een lage score kan komen van een ongebruikelijke maar legitieme browser, een gedeeld netwerk of een VPN. Behandel de score als één invoer. Als je legitieme taak blijft laag scoren, is het eerlijke antwoord vaak om de eigenaar van de site te vragen om een allowlist of een API.

Waar Scarnox staat

Scarnox lost reCAPTCHA v3 vandaag nog niet live op. Het enige live tasktype is PopularCaptcha, proxyless. reCAPTCHA v3 komt binnenkort beschikbaar. Een op score gebaseerde solver moet een token teruggeven dat de site accepteert, en dat is een ander probleem dan het oplossen van een zichtbare puzzel, dus de integratiedetails worden in de API-referentie gedocumenteerd zodra de ondersteuning er is.

Maak een account aan om te beginnen met gratis proefkrediet, zonder creditcard, en dan ben je klaar wanneer het type live gaat.

De score in je eigen logs lezen

Omdat er geen zichtbare uitdaging is, begrijp je een op score gebaseerde mislukking alleen door hem te loggen. Op je eigen site registreer je de score, de actienaam en de succesvlag die je backend ontvangt van de verificatieaanroep, samen met het tijdstip van het verzoek en het pad waar het vandaan kwam. Na een week verkeer laat het patroon meestal zien welke pagina's of stromen laag scoren. Een stroom die altijd laag scoort, kan een echt probleem zijn voor legitieme gebruikers, zoals een aanmeldstap die te snel na het laden van de pagina komt, in plaats van een botprobleem.

Vergelijk ook scores voor dezelfde actie tussen verschillende browsers en netwerken. Scoort een gewone bezoeker op een thuisverbinding goed, en dezelfde bezoeker op een zakelijke VPN slecht, dan reageert de score op het netwerk en niet op de browser. De oplossing is dan een gesprek over toegang, geen aanpassing aan de automatisering.

Houd de logs vrij van persoonsgegevens. Een score en een actienaam zijn genoeg om de meeste problemen te diagnosticeren, en meer opslaan dan nodig creëert een privacyverplichting die je niet wilt.

Scrape verantwoord

Controleer robots.txt en de voorwaarden van de site voordat je een scrapingtaak start. Houd je frequentie laag, vermijd het verzamelen van persoonsgegevens die je niet nodig hebt, en bedenk dat een op score gebaseerde controle de manier is waarop de site zichzelf beschermt. Er op grote schaal omheen werken is een teken dat de taak moet worden heroverwogen of met de eigenaar moet worden afgestemd. De gids over of webscraping legaal is behandelt het bredere plaatje.

Volgende stappen