Penjelasan Mendalam

Apa itu Solve Media CAPTCHA dan Cara Kerjanya

Solve Media CAPTCHA (sekarang bagian dari Permit.io / Radius Networks) adalah CAPTCHA berbasis iklan yang menggantikan teks acak yang terdistorsi dengan pesan merek dan slogan. Alih-alih mengetik "aX3kP", pengguna mengetikkan frasa yang mudah dikenali seperti "Kualitas yang Dapat Anda Percayai".

Meskipun Solve Media kurang umum saat ini, Solve Media masih muncul di beberapa situs web. Ini berfungsi seperti CAPTCHA teks standar dan dapat diselesaikan dengan pendekatan OCR gambar yang sama.


Cara kerja Solve Media

  1. Widget memuat dan menampilkan pesan iklan sebagai gambar
  2. Pengguna membaca frase merek dan mengetikkannya ke dalam kotak input
  3. Responsnya diverifikasi oleh server Solve Media
  4. Jika benar, submit formulir dilanjutkan
┌─────────────────────────────────┐
│                                 │
│   "Taste The Rainbow"           │
│                                 │
├─────────────────────────────────┤
│ Type the phrase: [____________] │
│                     [Verify]    │
└─────────────────────────────────┘

Selesaikan Media vs CAPTCHA teks standar

Fitur Selesaikan Media Teks standar CAPTCHA
Konten teks Frase merek, kata-kata bahasa Inggris Karakter acak
Keterbacaan Tinggi (dimaksudkan agar dapat dibaca) Rendah (dimaksudkan keras)
Distorsi Minimal Berat
Model pendapatan Periklanan Tidak ada
Kesulitan untuk OCR Mudah (teks bersih) Keras (terdistorsi)
Pengalaman pengguna Lebih baik (kata-kata yang dapat dikenali) Lebih buruk (sulit dibaca)

Mengidentifikasi Solve Media pada suatu halaman

Carilah penanda ini:

<!-- 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" />

Elemen dengan ID yang dimulai dengan adcopy- atau solvemedia menunjukkan Solve Media CAPTCHA.


Pemecahan Solve Media dengan CaptchaAI

Karena Solve Media menampilkan teks dalam gambar, hal ini dapat diselesaikan dengan metode OCR gambar standar:

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');
}

Pertimbangan utama

Tip Mengapa
Setel phrase=1 Frase Solve Media mengandung spasi
Setel numeric=2 Frasa biasanya hanya berupa huruf
Jangan setel min_len/token CAPTCHA1ZZ Panjang frasa bervariasi
Pertahankan kasus apa adanya Beberapa implementasi tidak membedakan huruf besar dan kecil

Pertanyaan Umum

Apakah Solve Media masih aktif?

Solve Media diakuisisi dan diganti namanya. Beberapa penerapan lama masih ada di situs web lama, namun penerapan baru jarang terjadi.

Mengapa Solve Media lebih mudah dipecahkan dibandingkan reCAPTCHA?

Solve Media dirancang agar mudah dibaca — ini adalah produk periklanan, bukan produk keamanan. Teksnya sengaja dibuat jelas agar pengguna dapat membaca pesan merek.

Bisakah saya menyelesaikan Solve Media tanpa OCR?

Dalam beberapa kasus, teks frasa tersedia di sumber halaman atau respons API, sehingga ekstraksi gambar tidak diperlukan. Periksa bidang tersembunyi adcopy_challenge.

Apakah CaptchaAI memiliki metode Solve Media khusus?

Tidak. Gunakan metode OCR gambar standar (method=base64 atau method=post) dengan phrase=1.


Panduan terkait

Komentar dinonaktifkan untuk artikel ini.