İçeriğe geç
DurumPanel

Görev türleri

Cloudflare doğrulama sayfası

Bu sayfa Çince sürümden makine çevirisiyle hazırlanmıştır ve hatalar içerebilir. Geçerli olan Çince sürüm sürümüdür.

Örnek görselCloudflare doğrulama sayfası tüm sayfanın yerini alır ("Bir dakika lütfen..."). Kontrol genellikle kendiliğinden tamamlanır ve tarayıcı gerçek sayfaya geçer.

Cloudflare doğrulama sayfası, sitenin tamamının Cloudflare tarafından durdurulduğu ve “Lütfen bekleyin…”, “Tarayıcınız kontrol ediliyor” ifadelerinin gösterildiği kontrol sayfasıdır. YesCaptcha, sizin verdiğiniz proxy ile sayfayı açar ve kontrolü geçer; cf_clearance gibi çerezleri, kullanılan User-Agent’ı, istek başlıklarını, yanıt başlıklarını ve kontrol sonrası sayfanın HTML’ini döndürür. CloudFlareTaskS2 görev başına 25 puan (≈ $3.75 / 1k), CloudFlareTaskS3 görev başına 20 puan (≈ $3.00 / 1k) ücretlendirilir; iki türün parametreleri, dönen sonucu ve etkisi aynıdır, yalnızca fiyatları farklıdır. Sonuç asenkron döner; tek bir görev genellikle 6 ile 35 saniye sürer, siteye göre fark büyüktür. Başarısız olan veya zaman aşımına uğrayan görevlerde puan iadesi otomatik yapılır.

POSThttps://api.yescaptcha.com/createTaskGlobal uç nokta
POSThttps://cn.yescaptcha.com/createTaskÇin uç noktası
  • Sayfa kaynağında __cf_chl_rt_tk veya cdn-cgi/challenge-platform varsa ve başlık Just a moment... / “Lütfen bekleyin” ise bu bir Cloudflare doğrulama sayfasıdır. Kontrol sayfasında “İnsan olduğunuzu doğrulayın” onay kutusunun işaretlenmesi gereken durumlar için de bu sayfa geçerlidir.
  • Yalnızca bir formun içine yerleştirilmiş Cloudflare doğrulama kutusu varsa bu Turnstile olur, bu sayfa gerekmez.
  • requests gibi bir kütüphaneyle istek yaptığınızda 403 ve “Just a moment…” dönüyor ama tarayıcıda sayfa doğrudan açılıyorsa, büyük olasılıkla yalnızca TLS parmak izi nedeniyle engelleniyorsunuzdur. Tarayıcının TLS parmak izini taklit eden bir kütüphane (ör. curl_cffi) kullanmak yeterlidir, doğrulamayı geçmeniz gerekmez.
Görev türüFiyatModNotlar
CloudFlareTaskS2$3.75 / 1k; 25 puan/görev · ¥25 / 1kAsenkronKendi proxy'niz
CloudFlareTaskS3$3.00 / 1k; 20 puan/görev · ¥20 / 1kAsenkronKendi proxy'niz

ABD doları fiyatları, 1 ABD doları ≈ ¥6.67 kuruyla hesaplanan tahminlerdir; görevler puan üzerinden ücretlendirilir.

AlanTürZorunluAçıklama
typestringEvetGörev türü; bu sayfadaki "Görev türleri ve fiyatlar" bölümüne bakın
websiteURLstringEvetDoğrulamanın arkasındaki sayfanın tam URL'si. Herkese açık bir http:// veya https:// adresi olmalıdır; özel IP adresleri ile localhost gibi yerel veya iç ağ ana bilgisayar adları reddedilir
proxystringEvetTek bir dize olarak proxy: http://user:[email protected]:8080 (HTTP proxy, kimlik bilgileri isteğe bağlı) veya socks5://proxy.example.com:1080 (kimlik bilgisiz). https:// proxy'ler ve kimlik bilgili SOCKS5 desteklenmez, yerel veya özel adresler reddedilir. Hedef sayfa için yapılan tüm istekler bu proxy üzerinden geçer
userAgentstringHayırGenellikle göndermeyin. Yalnızca Linux üzerindeki masaüstü Chrome User-Agent bilgisi kullanılır; diğerleri (Windows, macOS, mobil, diğer tarayıcılar) yok sayılır. Sonraki isteklerde her zaman sonuçtaki user_agent değerini kullanın
waitLoadbooleanHayırVarsayılan false. true ise doğrulama geçildikten sonra görev, sayfanın ağ etkinliği durulana kadar bekler ve ardından döner; böylece content içinde dinamik olarak yüklenen daha fazla içerik bulunur, birkaç saniye daha uzun sürer
requiredCookiesarrayHayırMutlaka alınması gereken Cookie adları, dize dizisi olarak, örneğin ["cf_clearance"]. Gönderilirse görev yalnızca hepsi alındığında başarılı olur; aksi halde ERROR_CAPTCHA_UNSOLVABLE döner ve puan iadesi yapılır. Gönderilmezse görev yine de cf_clearance almaya çalışır, ancak elde ettiği diğer Cookie'lerle de başarılı sayılır (ve puan düşümü yapılır); bu yüzden cf_clearance gerekiyorsa açıkça gönderin
blockImagebooleanHayırtrue ise hedef sayfadaki görseller yüklenmez (Cloudflare doğrulamasının kendisinin ihtiyaç duyduklarını hariç), böylece proxy trafiği tasarrufu sağlanır
postDataobjectHayırGönderilirse websiteURL adresine normal bir HTML formu POST'u olarak iletilir (application/x-www-form-urlencoded): her anahtar bir form alanıdır ve değerler dize olarak gönderilir, örneğin {"name": "hi"}. Bir nesne olmalıdır

proxy zorunludur; hedef sayfayı açan tüm istekler bu proxy üzerinden gider. cf_clearance çıkış IP’sine bağlıdır, bu yüzden hedef siteye sonraki erişimlerde de aynı proxy kullanılmalıdır.

Biçim Destek durumu
http://user:[email protected]:8080 Desteklenir: kullanıcı adı ve parolalı http proxy
http://proxy.example.com:8080 Desteklenir: kullanıcı adı ve parolasız http proxy
socks5://proxy.example.com:1080 Desteklenir: kullanıcı adı ve parolasız socks5 proxy; socks5h:// socks5:// gibi işlenir
socks5://user:[email protected]:1080 Desteklenmez, ERROR_PROXY_INCORRECT döner; kullanıcı adı ve parola gerekiyorsa http proxy kullanın
https://proxy.example.com:443 gibi diğer protokoller veya eksik port Desteklenmez, ERROR_PROXY_INCORRECT döner
127.0.0.1, 192.168.x.x, 10.x.x.x gibi yerel, iç ağ ve ayrılmış adresler veya bu adreslere çözümlenen alan adları Reddedilir, ERROR_PROXY_BANNED döner

Genellikle userAgent göndermeyin. Doğrulamayı Linux masaüstü Chrome ile geçiyoruz; yalnızca Linux masaüstü Chrome User-Agent’ı kabul edilir, diğerleri (Windows, macOS, mobil veya başka tarayıcılar) doğrudan yok sayılır: yapılan testlerde tarayıcının gerçek ortamı ile User-Agent uyuşmadığında Cloudflare doğrulaması geçilemiyor. Sonraki isteklerde her zaman sonuçtaki user_agent değerini kullanın.

POST https://api.yescaptcha.com/createTask
{
"clientKey": "YOUR_CLIENT_KEY",
"task": {
"type": "CloudFlareTaskS3",
"websiteURL": "https://example.com/",
"proxy": "http://user:[email protected]:8080",
"requiredCookies": ["cf_clearance"]
}
}
  • CloudFlareTaskS2 kullanmak için yalnızca type değerini değiştirin, diğer alanlar aynı kalır.
  • requiredCookies olarak ["cf_clearance"] gönderilirse, cf_clearance alınamadığında görev başarısız olur ve puan iadesi yapılır; gönderilmezse, cf_clearance alınamayıp yalnızca başka çerezler alınsa bile görev başarılı sayılır ve puan düşülür.
  • Form göndermek için postData ekleyin, örneğin {"name": "hi"}; bu veri websiteURL adresine POST formu olarak gönderilir.

Görevi oluşturduktan sonra her 5 saniyede bir getTaskResult çağırın; akış diğer asenkron görevlerle aynıdır, bkz. getTaskResult.

{
"errorId": 0,
"status": "ready",
"solution": {
"user_agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/155.0.0.0 Safari/537.36",
"cookies": {
"cf_clearance": "Wq3vXk9...-1760860800-1.2.1.1-..."
},
"request_headers": {
"accept-language": "en-US,en;q=0.9",
"user-agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/155.0.0.0 Safari/537.36"
},
"headers": {
"content-type": "text/html; charset=UTF-8",
"server": "cloudflare"
},
"content": "<!DOCTYPE html>..."
}
}

Yukarıdaki çerez değeri ve istek başlıkları örnek amaçlıdır; gerçek değerler için API’nin döndürdüğü yanıtı esas alın.

AlanTürAçıklama
cookiesobjectDoğrulama geçildikten sonra tarayıcıdaki tüm çerezler (ad-değer nesnesi); genellikle cf_clearance içerir. requiredCookies belirttiyseniz bunların her biri dahil edilir. Döndürülen user_agent ve sağladığınız proxy ile birlikte kullanın
user_agentstringTarayıcının doğrulamayı geçerken fiilen kullandığı User-Agent (Linux üzerinde masaüstü Chrome). cf_clearance bu değere bağlıdır; sonraki tüm isteklerde bunu kullanın
request_headersobjectTarayıcının hedef sayfaya yaptığı son istekte gönderdiği istek başlıkları; sonraki isteklerde aynen kullanmanız önerilir
headersobjectDoğrulama geçildikten sonra hedef sayfanın yanıt başlıkları
contentstringDoğrulama geçildikten sonra hedef sayfanın HTML kaynağı
  1. Sonraki isteklerde dönen cookies, dönen user_agent ve görev oluşturulurken kullanılan aynı proxy’yi birlikte kullanın. cf_clearance User-Agent’a ve çıkış IP’sine bağlıdır; üçünden biri farklı olursa doğrulama sayfası yeniden çıkar.
  2. İstek başlıklarını mümkün olduğunca request_headers içindekilerle gönderin ve tarayıcıyla uyumlu bir TLS parmak izi kullanın (örneğin curl_cffi’nin impersonate parametresi).
  3. cf_clearance belirli bir süre geçerlidir (süreyi hedef site belirler, bazı sitelerde 1 saate kadar çıkar); bu süre içinde doğrulamayı yeniden geçmeniz gerekmez. İstek sıklığı çok yüksek olursa IP’niz Cloudflare tarafından engellenebilir.
  4. Yalnızca sayfa içeriği gerekiyorsa content doğrudan kullanılabilir, sayfayı yeniden istemeniz gerekmez.

Görev oluşturulurken dönen hatalarda puan düşümü yapılmaz; görev oluşturulduktan sonra başarısız olan veya zaman aşımına uğrayan görevlerde puan iadesi otomatik yapılır. API yalnızca hata kodunu ve genel bir açıklamayı döndürür; ayrıntılı nedenler için aşağıdaki tabloya bakın.

Hata kodu Ne zaman döner Ne yapmalı
ERROR_REQUIRED_FIELDS Görev oluştururken: websiteURL veya proxy eksik İki zorunlu alanı da ekleyin
ERROR_ILLEGAL_PARAMETERS Görev oluştururken: websiteURL http:// / https:// ile başlayan herkese açık bir URL değil, postData bir nesne değil, requiredCookies bir dize dizisi değil. Sonuç sorgularken: hedef URL’nin alan adı proxy üzerinden çözümlenemedi Parametreleri düzeltin; URL yazımını ve proxy’nin bu siteye erişip erişemediğini kontrol edin
ERROR_PROXY_INCORRECT Görev oluştururken: proxy biçimi hatalı, port eksik, https:// proxy veya kullanıcı adı ve parolalı socks5 kullanılmış Yukarıdaki “Proxy gereksinimleri” bölümündeki biçime göre düzeltin; kullanıcı adı ve parola gerekiyorsa http proxy kullanın
ERROR_PROXY_BANNED Görev oluştururken: proxy yerel, iç ağ veya ayrılmış bir adres, ya da bu proxy kısa sürede birçok kez bağlanamadı. Sonuç sorgularken: hedef sitenin Cloudflare’i bu proxy’nin IP’sini doğrudan engelledi (“Sorry, you have been blocked”, “Access denied” sayfaları) Başka bir proxy kullanın; IP kalitesi ne kadar iyiyse geçmek o kadar kolay olur
ERROR_PROXY_CONNECT_REFUSED Proxy’ye bağlanılamadı (bağlantı reddedildi, proxy alan adı çözümlenemedi) veya proxy üzerinden sayfa açılırken bağlantı reddedildi ya da sıfırlandı Proxy adresini ve portunu kontrol edin, proxy’nin çevrimiçi olduğundan ve dışarıdan erişime izin verdiğinden emin olun; yine olmazsa başka bir proxy kullanın
ERROR_PROXY_CONNECT_TIMEOUT Proxy’ye bağlanırken veya proxy üzerinden sayfa açılırken zaman aşımı oldu Daha hızlı ve daha kararlı bir proxy kullanın
ERROR_PROXY_NOT_AUTHORISED Proxy kullanıcı adı veya parolası yanlış proxy içindeki kullanıcı adı ve parolayı kontrol edin; özel karakterleri URL kodlamasından geçirin
ERROR_PROXY_TLS_ERROR Proxy üzerinden sayfa açılırken TLS el sıkışması hatası oluştu Proxy adresini, portunu ve protokolünü doğru yazdığınızdan emin olun; yine olmazsa başka bir proxy kullanın
ERROR_CAPTCHA_UNSOLVABLE Belirlenen sürede doğrulama geçilemedi, geçildikten sonra hâlâ kontrol sayfasında kalındı veya requiredCookies içinde istenen çerez alınamadı Önce proxy’yi değiştirip tekrar deneyin; bazı siteler için Destek ile iletişime geçebilirsiniz
ERROR_NO_SLOT_AVAILABLE Görev oluştururken: sıra dolu. Sonuç sorgularken: görev çok uzun süre sırada bekledi ve başlamadı, puan iadesi yapıldı Birkaç saniye bekleyip görevi yeniden oluşturun
ERROR_TASK_TIMEOUT Görev belirlenen sürede tamamlanmadı Görevi yeniden oluşturun; sürekli zaman aşımı genellikle proxy’nin çok yavaş olduğunu gösterir

Tüm hata kodları için bkz. Hata kodları.