Solve Media CAPTCHA (artık Permit.io / Radius Networks'ün bir parçası), bozuk rastgele metinlerin yerine marka mesajları ve sloganlar koyan reklam tabanlı bir CAPTCHA'ydı. Kullanıcılar "aX3kP" yazmak yerine "Güvenebileceğiniz Kalite" gibi tanınabilir bir ifade yazdılar.
Solve Media günümüzde daha az yaygın olsa da hâlâ bazı web sitelerinde yer alıyor. Standart bir metin CAPTCHA'sı gibi çalışır ve aynı resim OCR yaklaşımıyla çözülebilir.
Solve Medya nasıl çalışır?
- Widget bir reklam mesajını resim olarak yükler ve görüntüler
- Kullanıcı marka ifadesini okur ve giriş kutusuna yazar.
- Yanıt Solve Media'nın sunucuları tarafından doğrulandı
- Doğruysa form gönderimi devam eder
┌─────────────────────────────────┐
│ │
│ "Taste The Rainbow" │
│ │
├─────────────────────────────────┤
│ Type the phrase: [____________] │
│ [Verify] │
└─────────────────────────────────┘
Medya ve standart metin CAPTCHA'larını çözme
| Özellik | Medyayı Çöz | Standart metin CAPTCHA |
|---|---|---|
| Metin içeriği | Marka ifadeleri, İngilizce kelimeler | Rastgele karakterler |
| Okunabilirlik | Yüksek (okunabilir olması gerekiyordu) | Düşük (zor olması gerekiyordu) |
| Bozulma | Asgari | Ağır |
| Gelir modeli | Reklam | Yok |
| OCR'nin zorluğu | Kolay (temiz metin) | Sert (bozuk) |
| Kullanıcı deneyimi | Daha iyi (tanınabilir kelimeler) | Daha da kötüsü (okunması zor) |
Bir sayfada Çözüm Ortamını Tanımlama
Bu işaretleri arayın:
<!-- Solve Media script -->
<script src="https://api.solvemedia.com/papi/challenge.script"></script>
<!-- Widget container -->
<div id="adcopy-outer"></div>
<!-- Hidden response fields -->
<input type="hidden" name="adcopy_challenge" />
<input type="hidden" name="adcopy_response" />
Kimlikleri adcopy- veya solvemedia ile başlayan öğeler, Medya CAPTCHA'sını Çöz'ü belirtir.
CaptchaAI ile Çözme Ortamını Çözme
Solve Media, bir görüntüdeki metni görüntülediğinden, standart görüntü OCR yöntemiyle çözülebilir:
Python
import requests
import time
import base64
API_KEY = "YOUR_API_KEY"
# Capture the CAPTCHA image
# Method 1: Screenshot the widget
from selenium import webdriver
from selenium.webdriver.common.by import By
driver = webdriver.Chrome()
driver.get("https://example.com/page-with-solvemedia")
captcha_img = driver.find_element(By.CSS_SELECTOR, "#adcopy-puzzle-image img")
captcha_img.screenshot("solvemedia.png")
# Submit to CaptchaAI
with open("solvemedia.png", "rb") as f:
img_b64 = base64.b64encode(f.read()).decode()
response = requests.post("https://ocr.captchaai.com/in.php", data={
"key": API_KEY,
"method": "base64",
"body": img_b64,
"phrase": 1, # Contains spaces (multi-word phrase)
"json": 1
})
task_id = response.json()["request"]
# Poll for solution
for _ in range(30):
time.sleep(5)
result = requests.get("https://ocr.captchaai.com/res.php", params={
"key": API_KEY, "action": "get", "id": task_id, "json": 1
}).json()
if result.get("status") == 1:
text = result["request"]
print(f"Phrase: {text}")
break
# Type the phrase
driver.find_element(By.CSS_SELECTOR, "#adcopy_response").send_keys(text)
driver.find_element(By.CSS_SELECTOR, "form").submit()
Node.js
const axios = require('axios');
const fs = require('fs');
async function solveSolveMedia(imagePath) {
const imageB64 = fs.readFileSync(imagePath).toString('base64');
const submit = await axios.post('https://ocr.captchaai.com/in.php', null, {
params: {
key: 'YOUR_API_KEY',
method: 'base64',
body: imageB64,
phrase: 1,
json: 1
}
});
const taskId = submit.data.request;
for (let i = 0; i < 30; i++) {
await new Promise(r => setTimeout(r, 5000));
const res = await axios.get('https://ocr.captchaai.com/res.php', {
params: { key: 'YOUR_API_KEY', action: 'get', id: taskId, json: 1 }
});
if (res.data.status === 1) return res.data.request;
}
throw new Error('Timeout');
}
Temel hususlar
| İpucu | neden |
|---|---|
phrase=1'yi ayarlayın |
Çöz Medya ifadeleri boşluk içeriyor |
numeric=2'yi ayarlayın |
İfadeler genellikle yalnızca harflerden oluşur |
min_len/max_len ayarlamayın |
İfade uzunluğu değişir |
| Davayı olduğu gibi tut | Bazı uygulamalar büyük/küçük harfe duyarlı değildir |
SSS
Solve Medya hala aktif mi?
Solve Media satın alındı ve yeniden markalandı. Eski web sitelerinde bazı eski uygulamalar hâlâ mevcuttur, ancak yeni dağıtımlar nadirdir.
Solve Media'yı çözmek neden reCAPTCHA'ya göre daha kolay?
Solve Media okunabilir olacak şekilde tasarlandı; bir güvenlik ürünü değil, bir reklam ürünüydü. Metin, kullanıcıların marka mesajını okuyabilmesi için özellikle açıktı.
Solve Media'yı OCR olmadan çözebilir miyim?
Bazı durumlarda kelime öbeği metni sayfa kaynağında veya API yanıtında bulunur ve bu da görüntü çıkarmayı gereksiz hale getirir. adcopy_challenge gizli alanını kontrol edin.
CaptchaAI'nin özel bir Solve Media yöntemi var mı?
Hayır. phrase=1 ile standart görüntü OCR yöntemini (method=base64 veya method=post) kullanın.