# CAPTCHA türünü belirleme

> Bir sayfada hangi CAPTCHA'nın kullanıldığını nasıl anlarsınız: reCAPTCHA v2, görünmez v2, v3, Enterprise, hCaptcha, Cloudflare Turnstile ile Cloudflare doğrulama sayfası arasındaki fark ve her biri için hangi YesCaptcha görev türünün kullanılacağı.

Source: https://docs.yescaptcha.com/tr/guides/identify-captcha/ · Last verified: 2026-10-15

> This page was machine-translated from the Chinese version. If anything differs, the Chinese version prevails: https://docs.yescaptcha.com/zh/guides/identify-captcha/

Doğru görev türünü seçmenin ilk adımı CAPTCHA’yı tanımaktır. En güvenilir yol, tarayıcının geliştirici araçlarını (F12) açıp Network (Ağ) panelinde sayfanın hangi CAPTCHA betiğini yüklediğine bakmaktır; görünüşe bakarak da ayırt edebilirsiniz.

## Görünümden tanıma

Her captcha’nın web sayfasında nasıl göründüğü (animasyonlu çizimler, ekran görüntüsü değil); ilgili görev türü sayfasını açmak için bir karta tıklayın. Görünüm yeterli değilse aşağıdaki hızlı başvuru tablosu ve Network paneliyle doğrulayın.

-   [reCAPTCHA v2: Onay kutusu · Görünmez](https://docs.yescaptcha.com/tr/tasks/recaptcha-v2.md)
-   [reCAPTCHA v3](https://docs.yescaptcha.com/tr/tasks/recaptcha-v3.md)
-   [reCAPTCHA v2 görsel tanıma: 3×3 ızgara · 4×4 ızgara · 1×1 tek görsel](https://docs.yescaptcha.com/tr/tasks/recaptcha-classification.md)
-   [hCaptcha](https://docs.yescaptcha.com/tr/tasks/hcaptcha.md)
-   [hCaptcha görsel tanıma: Görsel ızgarası · Bir noktaya tıklama · Sürükle ve bırak · Animasyonlu](https://docs.yescaptcha.com/tr/tasks/hcaptcha-classification.md)
-   [Cloudflare Turnstile: Otomatik · Onay kutusu](https://docs.yescaptcha.com/tr/tasks/turnstile.md)
-   [Cloudflare doğrulama sayfası: Otomatik · Onay kutusu](https://docs.yescaptcha.com/tr/tasks/cloudflare-challenge.md)
-   [FunCaptcha görsel tanıma: Oklar · 6 görselli ızgara](https://docs.yescaptcha.com/tr/tasks/funcaptcha-classification.md)
-   [AWS WAF / bCaptcha görsel tanıma: AWS WAF · bCaptcha](https://docs.yescaptcha.com/tr/tasks/aws-bcaptcha-classification.md)
-   [Görselden harf ve rakam tanıma: Gürültülü · Gürültü çizgileri · Matematik](https://docs.yescaptcha.com/tr/tasks/image-to-text.md)

## Hızlı başvuru

| Gördüğünüz | Ne olduğu | Kullanılacak görev türü |
| --- | --- | --- |
| “Ben robot değilim” onay kutusu | reCAPTCHA v2 | [reCAPTCHA v2](https://docs.yescaptcha.com/tr/tasks/recaptcha-v2.md) |
| Onay kutusu yok; gönder düğmesine tıklayınca görsel soru açılır; köşede küçük bir reCAPTCHA rozeti var | Görünmez reCAPTCHA v2 (veya v3) | Aşağıdaki “reCAPTCHA sürümleri” bölümüne bakın |
| Hiçbir etkileşim yok; yalnızca sağ altta reCAPTCHA rozeti var | reCAPTCHA v3 | [reCAPTCHA v3](https://docs.yescaptcha.com/tr/tasks/recaptcha-v3.md) |
| “Ben insanım” onay kutusu; görsel sorularda hCaptcha yazar | hCaptcha | [hCaptcha](https://docs.yescaptcha.com/tr/tasks/hcaptcha.md) |
| Formun içine gömülü bir Cloudflare doğrulama kutusu; işaretlendikten sonra sayfa yönlenmez | Cloudflare Turnstile | [Turnstile](https://docs.yescaptcha.com/tr/tasks/turnstile.md) |
| Sayfanın tamamında “Just a moment…” / “Bağlantınız kontrol ediliyor” yazar ve otomatik yönlendirilir | Cloudflare doğrulama sayfası | [Cloudflare doğrulama sayfası](https://docs.yescaptcha.com/tr/tasks/cloudflare-challenge.md) |
| Arkose Labs’in bulmaca ve görsel seçme soruları (ör. “Doğru yöne bakan görseli seçin”) | FunCaptcha | [FunCaptcha görsel tanıma](https://docs.yescaptcha.com/tr/tasks/funcaptcha-classification.md) |
| Bozuk harf ve rakamlardan oluşan bir görsel | Karakter CAPTCHA’sı | [Görselden metin tanıma](https://docs.yescaptcha.com/tr/tasks/image-to-text.md) |

## reCAPTCHA sürümleri

Network panelinde `api.js` veya `enterprise.js` araması yapın:

| Yüklenen betik | Sürüm |
| --- | --- |
| `recaptcha/api.js`, `render` parametresi yok veya `render=explicit` | v2 standart |
| Yukarıdaki gibi ve `anchor` isteğinin adresinde `size=invisible` var | Görünmez v2; göreve `"isInvisible": true` ekleyin |
| `recaptcha/api.js?render=SITE_KEY` (`render` değeri `explicit` değil) | v3 standart |
| `recaptcha/enterprise.js`, `render` parametresi yok veya `render=explicit` | v2 Enterprise |
| `recaptcha/enterprise.js?render=SITE_KEY` | v3 Enterprise |

Örnekler:

```text
https://www.google.com/recaptcha/api.js?onload=onloadcallback&render=explicit   → v2
https://www.google.com/recaptcha/api.js?render=6LdyC2cUAAAAACGuDKpXeDorzUDWXmdqeg-xy696   → v3
https://www.google.com/recaptcha/enterprise.js?render=explicit   → v2 Enterprise
```

Görünmez v2 bazen yalnızca v3 türüyle geçilir; ikisini de deneyin.

Aşağıdaki kodu tarayıcı konsolunda (Console) çalıştırarak da sayfadaki tüm reCAPTCHA’ların sürümünü, site anahtarını, sayfa adresini ve geri çağırma (callback) fonksiyonunu listeleyebilirsiniz:

find-recaptcha-clients.js

```js
// Paste into the browser DevTools console on a page with reCAPTCHA, then run findRecaptchaClients().
// Lists every reCAPTCHA on the page: version (V2/V3), sitekey, page URL and the callback function.
function findRecaptchaClients() {
  if (typeof ___grecaptcha_cfg === 'undefined') return [];
  return Object.entries(___grecaptcha_cfg.clients).map(([cid, client]) => {
    const data = { id: cid, version: cid >= 10000 ? 'V3' : 'V2' };
    const objects = Object.entries(client).filter(([, value]) => value && typeof value === 'object');
    objects.forEach(([toplevelKey, toplevel]) => {
      const found = Object.entries(toplevel).find(
        ([, value]) => value && typeof value === 'object' && 'sitekey' in value && 'size' in value,
      );
      if (toplevel instanceof HTMLElement && toplevel.tagName === 'DIV') data.pageurl = toplevel.baseURI;
      if (found) {
        const [sublevelKey, sublevel] = found;
        data.sitekey = sublevel.sitekey;
        const callbackKey = data.version === 'V2' ? 'callback' : 'promise-callback';
        const callback = sublevel[callbackKey];
        if (!callback) {
          data.callback = null;
          data.function = null;
        } else {
          data.function = callback;
          const keys = [cid, toplevelKey, sublevelKey, callbackKey].map((key) => `['${key}']`).join('');
          data.callback = `___grecaptcha_cfg.clients${keys}`;
        }
      }
    });
    return data;
  });
}

findRecaptchaClients();
```

Örnek çıktı:

```json
[
  {
    "id": "0",
    "version": "V2",
    "sitekey": "6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-",
    "function": "onSuccess",
    "callback": "___grecaptcha_cfg.clients['0']['l']['l']['callback']",
    "pageurl": "https://www.google.com/recaptcha/api2/demo"
  }
]
```

Karşılaştırma için Google’ın resmi demo sayfalarını kullanabilirsiniz: v2 standart için `https://www.google.com/recaptcha/api2/demo`, görünmez v2 için `https://www.google.com/recaptcha/api2/demo?invisible=true`.

## Turnstile ve Cloudflare doğrulama sayfası

İkisi de Cloudflare’e aittir ama aynı şey değildir:

-   **Turnstile**, sayfadaki bir formun içine gömülü doğrulama kutusudur. Doğrulama tamamlanınca kutu işaretlenir, sayfanın kendisi yönlenmez. Sayfa `challenges.cloudflare.com/turnstile/v0/api.js` dosyasını yükler. [Turnstile](https://docs.yescaptcha.com/tr/tasks/turnstile.md) görev türünü kullanın.
-   **Cloudflare doğrulama sayfası**, sayfanın tamamını Cloudflare’in kontrol ekranıyla değiştirir; “Just a moment…” ve “xx.com bağlantınızın güvenliğini kontrol etmeli” gibi metinler görünür, içinde bir doğrulama kutusu da bulunabilir. Geçildikten sonra gerçek sayfaya otomatik yönlendirilir. Kaynak kodunda `__cf_chl_rt_tk` veya `cdn-cgi/challenge-platform` bulunur. [Cloudflare doğrulama sayfası](https://docs.yescaptcha.com/tr/tasks/cloudflare-challenge.md) görev türünü kullanın.

Programla istek attığınızda 403 ve “Just a moment…” dönüyor ama tarayıcıyla sayfa doğrudan açılıyorsa, büyük olasılıkla yalnızca TLS parmak izi nedeniyle engelleniyorsunuz. Tarayıcının TLS parmak izini taklit eden bir kütüphane (ör. curl\_cffi) kullanırsanız istek geçer; doğrulamayı çözmeniz gerekmez.
