Skip to content
API
Shopee Captcha

Shopee Captcha

Pangkalahatang-ideya

Ang Shopee Captcha ay isang sistema ng captcha na ginagamit ng Shopee upang protektahan ang mga user at sistema mula sa hindi pangkaraniwang pag-uugali tulad ng mga bot, spam, o awtomatikong pag-login.

Sinusuportahan ng Achicaptcha ang awtomatikong paglutas ng Shopee captcha para sa iba't ibang platform (browser, emulator, telepono). Tingnan ang gabay sa ibaba upang isama ang API.

🛍️

Para sa Shopee text captcha, mangyaring sumangguni sa Text Captcha. Kung makaranas ka ng anumang mga isyu, mangyaring makipag-ugnayan sa admin (opens in a new tab) para sa suporta.

Shopee Slider Captcha 1Shopee Slider Captcha 2

1. Lumikha ng Task

Request

POST https://api.achicaptcha.com/createTask

Mga Parameter

ParameterUri ng DataKinakailangan?Paglalarawan
clientKeystringooAPI key
task.typestringooShopeeCaptchaTask
task.imagestringooBase64 mask image|Base64 background image
task.subTypeintooUri ng Captcha:
0: Slider captcha

Halimbawa ng Request

POST /createTask HTTP/1.1
Host: api.achicaptcha.com
Content-Type: application/json
 
{
  "clientKey": "YOUR_API_KEY",
  "task": {
    "type": "ShopeeCaptchaTask",
    "image": "/9j/4AAQSkZJRgABAQEASABIAAD...|/9j/4DSJFHKSDJDS...",
    "subType": 0
  }
}

Response

Sa tagumpay, ang server ay magbabalik ng errorId = 0 at taskId

{
  "errorId": 0,
  "taskId": "f2fc70d6-c76b-4fba-9480-205ac1fe9fb9"
}

2. Kunin ang Resulta

Request

POST https://api.achicaptcha.com/getTaskResult

Mga Parameter

ParameterUri ng DataKinakailangan?Paglalarawan
clientKeystringooAPI key, makipag-ugnayan sa admin
taskIdstringooTaskId mula sa hakbang (1)

Halimbawa ng Request

POST /getTaskResult HTTP/1.1
Host: api.achicaptcha.com
Content-Type: application/json
 
{
  "clientKey": "Your API_KEY",
  "taskId": "f2fc70d6-c76b-4fba-9480-205ac1fe9fb9"
}

Response

{
  "errorId": 0,
  "status": "ready",
  "solution": "x1,y1,x2,y2"
}

Kahulugan ng Response

  • errorId = 0 at status = ready: Matagumpay na nalutas, basahin ang resulta sa solution
  • errorId = 1 at status = processing: Ang captcha ay nilulutas pa, maghintay ng 1-2 segundo at subukang muli
  • errorId maliban sa 0 at 1: Error sa sistema, ibinigay ang error code at paglalarawan
  • solution: Para sa slider captcha: ibinabalik ang x-axis coordinate upang i-drag

Mga Halimbawa ng Integrasyon

import requests
import time
 
def solve_shopee_captcha(mask_image, bg_image, sub_type, api_key='YOUR_API_KEY'):
    # Step 1: Create task
    create_task_url = 'https://api.achicaptcha.com/createTask'
    create_task_payload = {
        'clientKey': api_key,
        'task': {
            'type': 'ShopeeCaptchaTask',
            'image': mask_image + '|' + bg_image,
            'subType': sub_type
        }
    }
    
    response = requests.post(create_task_url, json=create_task_payload)
    result = response.json()
    
    if result['errorId'] != 0:
        raise Exception(result['errorDescription'])
    
    task_id = result['taskId']
    
    # Step 2: Get result
    get_result_url = 'https://api.achicaptcha.com/getTaskResult'
    
    while True:
        time.sleep(2)  # Wait 2 seconds
        
        get_result_payload = {
            'clientKey': api_key,
            'taskId': task_id
        }
        
        response = requests.post(get_result_url, json=get_result_payload)
        result = response.json()
        
        if result['errorId'] == 0 and result['status'] == 'ready':
            return result['solution']
        
        if result['errorId'] != 0 and result['errorId'] != 1:
            raise Exception(result['errorDescription'])
        
        # If status == 'processing', continue loop
 
# Usage
mask_image = '/9j/4AAQSkZJRgABAQEASABIAAD...'  # Base64 mask image
bg_image = '/9j/4DSJFHKSDJDS...'  # Base64 background image
sub_type = 0  # 0: Slider captcha
solution = solve_shopee_captcha(mask_image, bg_image, sub_type, 'YOUR_API_KEY')
print('Shopee captcha solution:', solution)

Mga Karaniwang Error Code

Mga Error Code Kapag Gumagawa ng Task

Error CodePaglalarawanMga Tala
0successMatagumpay na nalikha ang task
2missing required fieldsKulang ang mga kinakailangang field, suriin ang mga parameter (image, subType)
3task not supportedHindi suportado ang uri ng task
4task creation failedNabigo ang paglikha ng task, subukang muli mamaya
5client key does not existHindi umiiral ang API key, suriin ang iyong API key
6insufficient account balanceHindi sapat ang balanse ng account, magdagdag ng credits

Mga Error Code Kapag Kumukuha ng Resulta

Error CodePaglalarawanMga Tala
0successTagumpay, basahin ang resulta sa field na solution
1processingPinoproseso, maghintay ng 1-2 segundo at ipadala muli ang request
5client key does not existHindi umiiral ang API key, suriin ang iyong API key
7task failed, please create a new taskNabigo ang task, mangyaring lumikha ng bagong task
8task ID does not existHindi umiiral ang Task ID o nag-expire na

Pinakamahuhusay na Kasanayan

Upang makamit ang pinakamahusay na mga resulta kapag ginagamit ang Achicaptcha API para sa Shopee Captcha, sundin ang mga prinsipyong ito:

1. Ihanda ang mga Base64 Image

  • I-convert ang mask at background image sa Base64 format
  • Tiyaking malinaw ang kalidad ng larawan upang mapataas ang katumpakan
  • Ikonekta ang dalawang larawan gamit ang | (pipe) character

2. Interval ng Polling

  • Maghintay ng hindi bababa sa 1-2 segundo sa pagitan ng mga pagsusuri ng resulta
  • Huwag i-spam ang API ng masyadong maraming sunud-sunod na request
  • Magkaroon ng timeout upang maiwasan ang mga infinite loop (inirerekomenda ang 120 segundo)

3. Paghawak ng Error

  • Suriin ang errorId upang matukoy ang mga error
  • errorId = 0 at status = ready: Tagumpay
  • errorId = 1: Pinoproseso, magpatuloy sa polling
  • errorId maliban sa 0 at 1: Error sa sistema, kailangang hawakan

4. Retry Logic

  • Magpatupad ng retry para sa mga pansamantalang error
  • Gumamit ng exponential backoff kapag nagre-retry
  • Limitahan ang maximum na mga pagsubok sa retry

5. Seguridad ng API Key

  • Huwag i-hardcode ang API key sa code
  • Gumamit ng mga environment variable
  • Huwag ilantad ang API key sa client-side

Mga Kapaki-pakinabang na Link: