Facebook Captcha
Pangkalahatang-ideya
Ang Facebook Captcha ay isang sistema ng seguridad na ginagamit ng Facebook upang maiwasan ang spam, mga bot, at hindi kanais-nais na mga awtomatikong aktibidad. Ito ay isang text captcha na may natatanging font ng Facebook.
📘
Ang Facebook Captcha ay karaniwang lumalabas kapag nagla-log in, nagrerehistro ng mga bagong account, o kapag may natukoy ang Facebook na hindi pangkaraniwang aktibidad mula sa iyong account.

1. Lumikha ng Request
Request
POST https://api.achicaptcha.com/createTask
Mga Parameter
| Pangalan ng Parameter | Uri ng Data | Kinakailangan? | Paglalarawan |
|---|---|---|---|
clientKey | string | oo | Api key |
task.type | string | oo | ImageToTextTask |
task.image | string | oo | base64 ng Facebook captcha image |
task.subType | string | oo |
Halimbawa ng Request
POST /createTask HTTP/1.1
Host: api.achicaptcha.com
Content-Type: application/json
{
"clientKey": "YOUR_API_KEY",
"task": {
"type": "ImageToTextTask",
"image": "base64 encoded Facebook captcha image",
"subType": "facebook"
}
}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
| Pangalan ng Parameter | Uri ng Data | Kinakailangan? | Paglalarawan |
|---|---|---|---|
clientKey | string | oo | Api key |
taskId | string | oo | TaskId mula sa (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": "2m7k8x"
}Paliwanag sa Katayuan
errorId = 0atstatus = ready: Matagumpay na nalutas, basahin ang resulta sasolutionerrorId = 0atstatus = processing: Nilulutas ang captcha, maghintay ng 2 segundo at subukang mulierrorId > 0: Error sa sistema, nagbabalik ng error code at paglalarawan
Mga Halimbawa ng Integrasyon
import requests
import time
import base64
def solve_facebook_captcha(image_path, api_key='YOUR_API_KEY'):
# Read and encode image
with open(image_path, 'rb') as image_file:
image_base64 = base64.b64encode(image_file.read()).decode('utf-8')
# Step 1: Create task
create_task_url = 'https://api.achicaptcha.com/createTask'
create_task_payload = {
'clientKey': api_key,
'task': {
'type': 'ImageToTextTask',
'image': image_base64,
'subType': 'facebook'
}
}
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:
raise Exception(result['errorDescription'])
if result['status'] == 'ready':
return result['solution']
# If status == 'processing', continue loop
# Usage
solution = solve_facebook_captcha('facebook_captcha.png', 'YOUR_API_KEY')
print('Facebook captcha result:', solution)Mga Karaniwang Error Code
| Error Code | Paglalarawan | Mga Tala |
|---|---|---|
| 0 | success | Tagumpay |
| 1 | processing | Pinoproseso |
| 2 | missing required fields | Kulang ang kinakailangang field, suriin muli ang mga parameter |
| 3 | task not supported | Hindi suportado ang uri ng task |
| 4 | task creation failed | Nabigo ang paglikha ng task |
| 5 | client key does not exist | Hindi umiiral ang API key, suriin muli ang API key |
| 6 | insufficient account balance | Hindi sapat ang balanse ng account, mag-top up ng credits |
| 7 | task failed, please create a new task | Nabigo ang task, mangyaring lumikha ng bagong task |
| 8 | task ID does not exist | Hindi umiiral ang Task ID |
Pinakamahuhusay na Kasanayan
Upang makamit ang pinakamahusay na mga resulta kapag ginagamit ang Achicaptcha API, sundin ang mga prinsipyong ito:
1. Kalidad ng Larawan
- Gumamit ng mga larawang may mataas na resolusyon
- Tiyaking ang mga larawan ay hindi masyadong malabo o maingay
- Kunin o i-crop ang tamang lugar ng Facebook captcha
2. Interval ng Polling
- Maghintay ng hindi bababa sa 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
3. Retry Logic
- Magpatupad ng retry para sa mga pansamantalang error tulad ng
ERROR_NO_SLOT_AVAILABLE - Gumamit ng exponential backoff kapag nagre-retry
- Limitahan ang maximum na bilang ng mga retry
4. 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: