NeuroCaptcha

任務類型

Cloudflare Challenge

CloudflareChallengeTask自備代理

送出頁面參數,就能取得可直接使用的 token,回應格式與其他類型完全相同。

使用你的代理伺服器:任務透過你提供的代理伺服器解決,因此 token 會與你的 IP 一致。代理伺服器的帳密會在解決後刪除。

價格

US$1.20每 1,000 個任務

每個任務 US$0.0012

取得 API 金鑰

即時指標(24 小時)

此類型的即時指標將於上線後顯示在狀態頁面上。

任務參數

參數類型必填任務參數
typestring必填CloudflareChallengeTask
websiteURLstring必填含有驗證碼之頁面的完整 URL。
cookiesstring選填目標網站的 Cookie,格式為 key1=value1; key2=value2。
userAgentstring選填解決時使用的 User-Agent;送出 token 時請使用相同的值。
proxyTypestring必填http、socks4 或 socks5。
proxyAddressstring必填代理伺服器的 IP 位址或主機名稱(僅限公開位址)。
proxyPortinteger必填代理伺服器連接埠。
proxyLoginstring選填代理伺服器帳號(需要驗證時填寫)。
proxyPasswordstring選填代理伺服器密碼。任務解決後即刪除。

範例

import time
import requests

API = "https://"
KEY = "YOUR_API_KEY"

# 1. create a task: the price is held, not charged
task = requests.post(f"{API}/createTask", json={
    "clientKey": KEY,
    "task": {
        "type": "CloudflareChallengeTask",
        "websiteURL": "https://example.com/",
        "proxyType": "http",
        "proxyAddress": "203.0.113.10",
        "proxyPort": 8080,
        "proxyLogin": "user",
        "proxyPassword": "pass",
    },
}).json()
if task["errorId"]:
    raise RuntimeError(task["errorCode"])

# 2. poll the result (or pass "callbackUrl" and get a signed webhook)
while True:
    time.sleep(3)
    res = requests.post(f"{API}/getTaskResult",
                        json={"clientKey": KEY, "taskId": task["taskId"]}).json()
    if res["errorId"]:
        raise RuntimeError(res["errorCode"])
    if res["status"] == "ready":
        print(res["solution"])
        break

其他任務類型