Skip to content
API
Tiktok Captcha

TikTok Captcha

अवलोकन

TikTok Captcha एक सत्यापन प्रणाली है जिसका उपयोग TikTok प्लेटफॉर्म को बॉट्स और स्पैम से बचाने के लिए करता है। यह कैप्चा आमतौर पर नया खाता पंजीकृत करते समय, लॉग इन करते समय, या असामान्य गतिविधि का पता चलने पर दिखाई देता है।

🎵

वर्तमान में, ब्राउज़र पर सभी 4 कैप्चा प्रकारों के लिए एक्सटेंशन उपलब्ध हैं। एक्सटेंशन प्राप्त करने के लिए कृपया व्यवस्थापक को इनबॉक्स करें। ब्राउज़र, एमुलेटर और फोन के लिए सभी कैप्चा प्रकार प्रदान करता है।

Rotate Captcha

1. कार्य बनाएँ

अनुरोध

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

पैरामीटर्स

पैरामीटरडेटा प्रकारआवश्यक?विवरण
clientKeystringहाँAPI key
task.typestringहाँTiktokCaptchaTask
task.imagestringहाँछवि का Base64
task.subTypeintहाँकैप्चा प्रकार: 0 (ब्राउज़र पर रोटेट कैप्चा), 1 (स्लाइडर कैप्चा), 2 (2 समान वस्तुओं का चयन करें), 3 (फोन, एमुलेटर पर रोटेट कैप्चा), 5 (प्रश्न को पूरा करने वाली वस्तुओं का चयन करें)
task.otherstringनहींsubType 5 के लिए, यह फ़ील्ड आवश्यक है। कैप्चा प्रश्न, उदाहरण के लिए: "Which of these objects neighs"

अनुरोध उदाहरण

POST /createTask HTTP/1.1
Host: api.achicaptcha.com
Content-Type: application/json
 
{
	"clientKey": "YOUR_API_KEY",
	"task": {
		"type": "TiktokCaptchaTask",
		"image": "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...(10460 chars omitted)...V7Q4rk8i3IvOS/eZexY2wFyvTDXyzAWT5qNlUXkiKiAJVRdUYlkBFEQQRQEC2yAghRCyCWQSyBZAsgWQW1kCyCoCCoqIqoFkVCiCKXVC3ooCKKKxIRkhCxZw+Zj8FjMPpFmJjHRYdL69ad0OidK+5LIM1V6WM3fQBZRD5TbagWWbCZZKsVRiqqCIIindVil0UJQEQ5XRV5oiHZA3sgKBzRBFSyIHS6AgWRQa3RCyAgHZFUahA5ofAdkVLoKgnOyKE6KgoBQUDVGSE2CBYWUVjyRU5qMtgAKCAAqKoGqErZVFCrHYAqjIBRAKoiAqj//Z",
		"subType": 2
	}
}

प्रतिक्रिया

सफल होने पर, सर्वर errorId = 0 और taskId लौटाएगा

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

कैप्चा सॉल्विंग सर्वर को भेजने के लिए छवि नमूने

ब्राउज़र पर:

फ़ील्ड image = base64_outer_image|base64_inner_image

Rotate Captcha - Outer Image
Rotate Captcha - Inner Image

एमुलेटर, फोन पर:

फ़ील्ड image 1 छवि का base64 है, जिसे केवल रोटेट कैप्चा भाग को शामिल करने के लिए क्रॉप किया गया है (दोनों वृत्तों के साथ, मार्जिन पर अतिरिक्त सफेद स्थान हो सकता है, मार्जिन की लंबाई लचीली है)

Rotate Captcha on phone

2. परिणाम प्राप्त करें

अनुरोध

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

पैरामीटर्स

पैरामीटरडेटा प्रकारआवश्यक?विवरण
clientKeystringहाँवेबसाइट से API key
taskIdstringहाँचरण (1) से TaskId

अनुरोध उदाहरण

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

प्रतिक्रिया

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

प्रतिक्रिया का अर्थ

  • errorId = 0 और status = ready: सफलतापूर्वक हल किया गया, solution में परिणाम पढ़ें
  • errorId = 1 और status = processing: कैप्चा हल किया जा रहा है, 1-2 सेकंड प्रतीक्षा करें और पुनः प्रयास करें
  • errorId 0 और 1 के अलावा: सिस्टम त्रुटि, त्रुटि कोड और विवरण प्रदान किया गया
  • solution:
    • ब्राउज़र पर रोटेट कैप्चा के लिए: स्लाइडर ड्रैग दूरी की लंबाई लौटाता है
    • एमुलेटर, फोन पर रोटेट कैप्चा के लिए: रोटेशन कोण लौटाता है, उपयोगकर्ता सूत्र का उपयोग करके ड्रैग दूरी की गणना करता है: ड्रैग दूरी = (L / 180) * solution (जहाँ L स्लाइडर की शुरुआत से अंत तक की दूरी है, स्लाइडर के केंद्र से मापा जाता है)
    • स्लाइडर कैप्चा के लिए: खींचने के लिए x-अक्ष निर्देशांक लौटाता है
    • 2 समान वस्तुओं का चयन करें कैप्चा के लिए: छवि पर क्लिक करने के लिए निर्देशांक की जोड़ी "x1,y1,x2,y2" लौटाता है
    • प्रश्न को पूरा करने वाली कई वस्तुओं का चयन करें कैप्चा के लिए: छवि पर क्लिक करने के लिए निर्देशांक "x1,y1,x2,y2,x3,y3,..." लौटाता है

एकीकरण उदाहरण

import requests
import time
import base64
 
def solve_tiktok_captcha(image_base64, sub_type, question=None, api_key='YOUR_API_KEY'):
    # Step 1: Create task
    task = {
        'type': 'TiktokCaptchaTask',
        'image': image_base64,
        'subType': sub_type
    }
    
    # If subType = 5, add other field (question)
    if sub_type == 5 and question:
        task['other'] = question
    
    create_task_url = 'https://api.achicaptcha.com/createTask'
    create_task_payload = {
        'clientKey': api_key,
        'task': task
    }
    
    response = requests.post(create_task_url, json=create_task_payload)
    result = response.json()
    
    if result['errorId'] != 0:
        raise Exception(result.get('errorDescription', 'Unknown error'))
    
    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.get('status') == 'ready':
            return result['solution']
        
        if result['errorId'] == 1 and result.get('status') == 'processing':
            # Continue waiting
            continue
        
        # Other errors
        raise Exception(result.get('errorDescription', 'Unknown error'))
 
# Usage - Example with select 2 objects captcha (subType = 2)
with open('captcha_image.png', 'rb') as f:
    image_base64 = base64.b64encode(f.read()).decode('utf-8')
 
sub_type = 2  # 0: Rotate browser, 1: Slider, 2: Select 2 objects, 3: Rotate phone, 5: Select by question
solution = solve_tiktok_captcha(image_base64, sub_type, api_key='YOUR_API_KEY')
print('TikTok captcha solution:', solution)  # "x1,y1,x2,y2"

सामान्य त्रुटि कोड

कार्य बनाते समय त्रुटि कोड

त्रुटि कोडविवरणनोट्स
0successकार्य सफलतापूर्वक बनाया गया
2missing required fieldsआवश्यक फ़ील्ड गायब है, पैरामीटर (image, subType) की जाँच करें
3task not supportedकार्य प्रकार समर्थित नहीं है
4task creation failedकार्य निर्माण विफल, बाद में पुनः प्रयास करें
5client key does not existAPI कुंजी मौजूद नहीं है, अपनी API कुंजी की जाँच करें
6insufficient account balanceअपर्याप्त खाता शेष, क्रेडिट टॉप अप करें

परिणाम प्राप्त करते समय त्रुटि कोड

त्रुटि कोडविवरणनोट्स
0successसफलता, solution फ़ील्ड में परिणाम पढ़ें
1processingप्रसंस्करण, 1-2 सेकंड प्रतीक्षा करें और अनुरोध फिर से भेजें
5client key does not existAPI कुंजी मौजूद नहीं है, अपनी API कुंजी की जाँच करें
7task failed, please create a new taskकार्य विफल, कृपया एक नया कार्य बनाएँ
8task ID does not existकार्य ID मौजूद नहीं है या समाप्त हो गया है

सर्वोत्तम प्रथाएँ

Achicaptcha API का उपयोग करते समय सर्वोत्तम परिणाम प्राप्त करने के लिए, इन सिद्धांतों का पालन करें:

1. सही कैप्चा प्रकार और subType की पहचान करें

  • TikTok विभिन्न प्रकार के कैप्चा का उपयोग करता है
  • प्रदर्शित किए जा रहे कैप्चा के प्रकार का सटीक पता लगाएं
  • अनुरोध में सही subType भेजें:
    • 0: ब्राउज़र पर रोटेट कैप्चा
    • 1: स्लाइडर कैप्चा
    • 2: 2 समान वस्तुओं का चयन करें
    • 3: फोन, एमुलेटर पर रोटेट कैप्चा
    • 5: प्रश्न को पूरा करने वाली वस्तुओं का चयन करें (other फ़ील्ड की आवश्यकता है)

2. छवियों को सही ढंग से प्रारूपित करें

  • ब्राउज़र पर रोटेट कैप्चा: base64_outer_image|base64_inner_image भेजें
  • फोन/एमुलेटर पर रोटेट कैप्चा: 1 छवि का base64 भेजें (जिसमें केवल रोटेट कैप्चा भाग हो)
  • अन्य प्रकार: संबंधित छवि का base64 भेजें
  • सुनिश्चित करें कि छवियां उचित base64 प्रारूप में एन्कोड की गई हैं

3. परिणामों को ठीक से संभालें

  • एमुलेटर/फोन पर रोटेट कैप्चा के लिए: ड्रैग दूरी सूत्र से निकालें: ड्रैग दूरी = (L / 180) * solution
    रोटेट कैप्चा ड्रैग के लिए L कैसे मापें
    ऊपर दिखाए अनुसार L मापें: यह ड्रैग गणना के लिए लंबाई है
  • वस्तुओं का चयन करें कैप्चा के लिए: क्लिक पॉइंट प्राप्त करने हेतु "x1,y1,x2,y2" निर्देशांक स्ट्रिंग को पार्स करें
  • स्लाइडर कैप्चा के लिए: स्लाइडर को खींचने हेतु लौटाए गए x निर्देशांक का उपयोग करें

4. पोलिंग अंतराल

  • परिणाम जाँचों के बीच कम से कम 1-2 सेकंड प्रतीक्षा करें
  • बहुत अधिक लगातार अनुरोधों के साथ API को स्पैम न करें
  • अनंत लूप से बचने के लिए टाइमआउट रखें (120 सेकंड अनुशंसित)

5. त्रुटि प्रबंधन

  • प्रतीक्षा जारी रखने के लिए errorId = 1 और status = processing की जाँच करें
  • अन्य त्रुटियों को उचित रूप से संभालें
  • अस्थायी त्रुटियों के लिए पुनः प्रयास तर्क लागू करें

6. API कुंजी सुरक्षा

  • कोड में API कुंजी को हार्डकोड न करें
  • पर्यावरण चर (environment variables) का उपयोग करें
  • क्लाइंट-साइड पर API कुंजी को उजागर न करें

उपयोगी लिंक: