Metin CAPTCHA (ImageToText) çözümünün fiyatlandırması
| CAPTCHA | Fiyat (USD) |
|---|---|
$ 0.30 1000 jeton |
Bu makalede tüm önemli sorulara cevap vermeye çalıştık. Bir problemi çözmeye başlamanın ilk adımı, hangi koruma sisteminin kullanıldığını belirlemektir. Bunun için, görsel örneklerin ve neyle karşı karşıya olduğunuzu hızlıca anlamanıza yardımcı olabilecek temel işaretlerin yer aldığı popüler captcha ve anti-bot koruma sistemleri listesine başvurabilirsiniz.
Sitenizde Metin CAPTCHA (ImageToText) kullanıldığını fark ederseniz, bir sonraki adım özelliklerini ve çalışma şeklini daha ayrıntılı incelemek olacaktır. Yine bu makalede, Metin CAPTCHA (ImageToText) sisteminin entegrasyonuna ilişkin kılavuzu da bulabilir ve böylece sitenizde nasıl çalıştığını tamamen anlayabilirsiniz. Bu da yalnızca mevcut korumayı anlamanıza değil, aynı zamanda bakımını doğru şekilde planlamanıza da yardımcı olur.
CapMonster Cloud ile ImageToText CAPTCHA Nasıl Çözülür
- Formun bulunduğu sayfayı açın ve CAPTCHA’nın görüntülendiğinden emin olun.
- CAPTCHA’yı çözmeden formu göndermeyi deneyin — sunucu bir hata döndürmelidir.
- CAPTCHA doğru şekilde çözüldüğünde form sorunsuz gönderilmelidir.
CapMonster Cloud API ile çalışma genellikle şu adımlardan oluşur:
type - ImageToTextTask
body - CAPTCHA dosyasının içeriği, base64 formatında. Değerin tek satır olarak, satır sonu olmadan gönderildiğinden emin olun;
capMonsterModule (isteğe bağlı) - Modül adı, örneğin “yandex”. Modül adını alternatif olarak iletme ve tüm mevcut modüllerin listesini buradan bulabilirsiniz;
Ayrıca diğer isteğe bağlı parametreleri belirleyebilirsiniz:
recognizingThreshold - CAPTCHA tanıma güven seviyesi, 0-100 arası değerler;
case - Büyük/küçük harf duyarlılığı. Olası değerler: true, false;
numeric - 1 — CAPTCHA sadece rakamlardan oluşuyorsa. Olası değerler: 0, 1;
math - false — varsayılan değer belirtilmemiş;
true — CAPTCHA bir matematiksel işlem gerektirir (örn. 2 + 6 CAPTCHA sonucu 8 döner).
Önemli: captcha_math modülü için math: true parametresini kullanmayın.
https://api.capmonster.cloud/createTask{
"clientKey":"API_KEY",
"task": {
"type":"ImageToTextTask",
"body":"BASE64_BODY_HERE!"
}
}
{
"errorId":0,
"taskId":407533072
}https://api.capmonster.cloud/getTaskResult{
"clientKey":"API_KEY",
"taskId": 407533072
}
{
"errorId":0,
"status":"ready",
"solution": {
"text":"answer"
}
}
// npm install playwright @zennolab_com/capmonstercloud-client
// npx playwright install chromium
import { CapMonsterCloudClientFactory, ClientOptions, ImageToTextRequest, CapMonsterModules } from '@zennolab_com/capmonstercloud-client';
import { chromium } from 'playwright';
const API_KEY = "YOUR_API_KEY"; // CapMonster Cloud API anahtarınızı girin
async function solveImageToTextAndFillField() {
const cmcClient = CapMonsterCloudClientFactory.Create(
new ClientOptions({ clientKey: API_KEY })
);
// Gerekirse bakiyeyi kontrol edin
const balance = await cmcClient.getBalance();
console.log("Balance:", balance);
// 1. Playwright’i başlatın ve form sayfasını açın
const browser = await chromium.launch({ headless: false });
const context = await browser.newContext();
const page = await context.newPage();
await page.goto("https://example.com/form"); // 2. Sayfadaki CAPTCHA URL’sini alın (örn. <img> seçici ile)
// 2. Sayfadaki CAPTCHA URL’sini alın (örn. <img> seçici ile)
const captchaUrl = await page.getAttribute("#captcha-img", "src");
// 3. Görüntüyü indirin ve Base64’e çevirin
const response = await fetch(captchaUrl);
const imageBuffer = await response.arrayBuffer();
const imageBase64 = Buffer.from(imageBuffer).toString('base64');
// 4. ImageToText çözümü için isteği oluşturun
const imageToTextRequest = new ImageToTextRequest({
body: imageBase64,
CapMonsterModule: CapMonsterModules.YandexWave, // veya başka bir modül
Case: true,
numeric: 0,
recognizingThreshold: 65,
math: false
});
// 5. CAPTCHA çözümünü alın
const result = await cmcClient.Solve(imageToTextRequest);
console.log("Captcha solution:", result.solution.text);
// 6. Çözümü forma yerleştirin ve gönderin
await page.fill("#captcha-input", result.solution.text); // Kendi seçicinizi buraya yazın
await page.click("#submit-button"); // Kendi buton seçicinizi buraya yazın
await page.waitForLoadState("networkidle");
console.log("CAPTCHA çözümü ile form gönderildi");
// 7. Tarayıcıyı kapatın
await browser.close();
}
solveImageToTextAndFillField().catch(console.error);
Adım 1. Bir yaklaşım seçin
Önce CAPTCHA’yı nasıl kullanacağınızı belirleyin:
Seçenek 1 — Dış sağlayıcı
Hızlı uygulama ve minimum destek gerekiyorsa uygundur.
Avantajları:
- Hızlı entegrasyon
- Botlara karşı hazır koruma
- Algoritmaları manuel güncelleme gerektirmez
Dezavantajları:
- Dış servise bağımlılık
- Sınırlı özelleştirme
Seçenek 2 — Özelleştirilmiş Metin CAPTCHA
Tam kontrol ve kendi entegrasyonu istiyorsanız uygundur.
Avantajları:
- Mantık ve tasarım üzerinde tam kontrol
- Dış bağımlılık yok
- Belirli senaryolara uyarlanabilir
Dezavantajları:
- Bot korumasını kendiniz uygulamanız gerekir
- Bakım ve geliştirme gerekir
Adım 2. CAPTCHA üretimini gerçekleştirin
Dış sağlayıcı için
- Serviste kayıt olun
- Anahtarları alın (site key / secret key)
- Script’i form sayfasına ekleyin
Özelleştirilmiş CAPTCHA için
- Rastgele bir karakter dizisi oluşturun (sayı veya harf)
- Bunu görüntüye çizin (Canvas, SVG veya sunucu tarafı)
- Bozulmalar ekleyin: gürültü, çizgiler, karakterlerin döndürülmesi
Adım 3. CAPTCHA’yı kullanıcıya gösterin
- CAPTCHA görselini formun yanına yerleştirin
- Metin giriş alanı ekleyin
- CAPTCHA yenileme butonu ekleyin
Önemli: Her yüklemede yeni bir kod oluşturulmalıdır.
Adım 4. Verileri sunucuya gönderin
Form gönderilirken gönderilecekler:
- Kullanıcının girdiği metin
- CAPTCHA ID veya oturum token’ı
Özelleştirilmiş CAPTCHA’da kod yalnızca sunucuda tutulmalıdır, istemciye gönderilmez.
Adım 5. Sunucuda CAPTCHA’yı doğrulayın
Dış sağlayıcı
- CAPTCHA token’ını sağlayıcı sunucusuna gönderin
- Doğrulama sonucunu alın (başarılı / hata)
Özelleştirilmiş CAPTCHA
- Girilen metni saklanan değerle karşılaştırın
- CAPTCHA geçerlilik süresini dikkate alın (örn. 1–2 dakika)
Adım 6. Karar verin
- CAPTCHA doğruysa — işlem gerçekleştirin (giriş, kayıt, form gönderimi)
- Değilse — hata gösterin ve yeni CAPTCHA oluşturun
Adım 7. Koruma önlemlerini güçlendirin (önerilir)
Metin CAPTCHA için bile ek önlemler önerilir:
- Deneme sayısını sınırlayın
- IP, oturum veya çerez ile bağlantı
- Tek kullanımlık geçici token’lar
- Şüpheli aktiviteleri kaydedin
Şunlardan emin olun:
- CAPTCHA doğrulamadan önce yeniden oluşturulmasın;
- Kod her oturum veya token için ayrı tutuluyor;
- CAPTCHA’nın geçerlilik süresi dolmamış.
Desteklenen captchas
Siteye önceden kurulmuş CAPTCHA veya başka bir koruma sistemi varsa ve koda erişiminiz yoksa — endişelenmeyin! Kullanılan teknolojiyi belirlemek oldukça kolaydır. İşlevselliği test etmek için CapMonster Cloud servisini izole bir test ortamında kullanarak token işleme ve doğrulama mantığının doğru çalıştığından emin olabilirsiniz.
Görüntü CAPTCHA’sı için sistemin ne olduğunu belirlemek, davranışını incelemek ve korumanın düzgün çalıştığını doğrulamak yeterlidir. Bu makalede, görüntü CAPTCHA’sını (ComplexImage) nasıl tanıyacağınızı ve nasıl bağlayıp yeniden yapılandıracağınızı gösterdik, böylece korumayı güvenli ve kontrollü şekilde sürdürebilirsiniz.