TLS Client 服务

专业的TLS客户端服务,支持HTTP/2、自定义JA3指纹、代理请求等高级功能

活跃 通用版 高灵活性
🚀 免费注册获取API密钥
立即注册 NoCaptcha.io →
专业验证码解决方案 | 高成功率 | 快速响应 | 24/7技术支持

🔗 API接口信息

请求地址(POST)

版本 接口地址
v1(通用版) http://api.nocaptcha.io/api/wanda/tls/v1

请求头参数

参数名 说明 必填
User-Token 用户密钥,从主页获取
Content-Type application/json
Developer-Id 开发者ID,开发者用户使用,用户主页邀请链接的字符串(如 xxx/register?c=abcdef, 则 abcdef 为开发者ID)

🔧 POST参数(JSON格式)

参数名 类型 说明 必填
url String 请求的URL地址
method String 请求方法,get/post
headers String/Object 请求头,可以是字符串或对象,不传默认为 { 'User-Agent': '随机ua' }
cookies.value String/Object 请求使用的cookies,可以是字符串或对象,{ '1': '2', '3': '4' } / '1=2; 3=4'
cookies.uri String cookie设置的域名,使用url即可
proxy String 代理地址,支持协议: http/https/socks5,格式: ip:port 或 user:pass@ip:port
data String/Object POST请求体,可以是字符串或对象,{ '1': '2', '3': '4' } / '1=2&3=4'
json String/Object POST JSON数据,示例 { '1': '2', '3': '4' }
timeout Number 请求超时时间(秒),默认15秒
http2 Boolean 是否使用HTTP/2协议,默认false
redirect Boolean 是否跟随重定向,默认true
ja3 String 自定义JA3指纹,不传表现为最新Chrome的随机指纹

📝 请求示例

{
    "url": "https://api-fashion.dior.com/graph?SubscribeNewsletter",
    "method": "post",
    "headers": {
        "Accept-Language": "zh-CN,zh;q=0.9",
        "Cache-Control": "no-cache",
        "Connection": "keep-alive",
        "DNT": "1",
        "Origin": "https://www.dior.com",
        "Pragma": "no-cache",
        "Referer": "https://www.dior.com/",
        "Sec-Fetch-Dest": "empty",
        "Sec-Fetch-Mode": "cors",
        "Sec-Fetch-Site": "same-site",
        "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36",
        "accept": "*/*",
        "apollographql-client-name": "Newlook Couture Catalog K8S",
        "apollographql-client-version": "5.282.3-8601f7a7.hotfix",
        "content-type": "application/json",
        "sec-ch-ua": "\"Not.A/Brand\";v=\"8\", \"Chromium\";v=\"114\", \"Google Chrome\";v=\"114\"",
        "sec-ch-ua-mobile": "?0",
        "sec-ch-ua-platform": "\"macOS\"",
        "x-dior-locale": "zh_hk",
        "x-dior-universe": "onedior"
    },
    "cookies": {
        "value": "_abck=D719B7C0C6B1EBE8FC8F5C1B804B2265~-1~YAAQJescuEJsVzWIAQAAnwAZQQkN297mPe+Q48Xd0/10jSvgz/y69qQbPEwxUuQZhIhisL+GFAMfvabHtQPRUbiIqzDD6vA9iN9lvjzaAbKaL+aNXF/3EhpYYYUsBa0q92JUxusD8F09nFXy3mfZ8p8GzDk+/ikw4Y8QVQcchjC/s6XYbG+I2RSHl+lDOSvR2biGLFZ1dW2PsFZQ6Fs4M1/ccWfaXg6IRvzjlWaF0vH8GIoljDVRvZxwCeUO71QJORFxeVEEO43BiC3LczJhMomt8pnTbnJcMbMbi1zFcYUKUZjYvB7+kJ1JsMHfVdzbrwTB2I3bePGPgX06RvzCReVCETYpJB7H+XEeJgQQDzKiYZhCONfnae3BQUll~-1~-1~1684722838; bm_sz=751A827227D797408E66A3559D978757~YAAQpVcyuNsPVjCIAQAAMTCrRhNw86NLVNcBypYZvOkbMMnc+ef6EeDWu9UtvPw3OfyfpKLmEFQeDw99mddahdMlOj3VxzPz8eV9mfMSWDLxup33fIKAvsMvnUjvAJV0gpZvTTwdk0atKXCg1DXvs+U+VOvPPJtS76B2t+r0jXrB+cUm2hJL7qF59kbHLBl54yypauoWa1qEu9lgelS5kdwiR93A0c9IRagfLG4VjFydhZBoD6ldWEQjQUflrf00GSoxQpL0QBKRlD7fFNRtMhBmndvu5yoGdixtPXCEKk5BzRl/~4605506~4276528; ak_bmsc=0E5236AFD795DD698B2E15191CEF0FDC~000000000000000000000000000000~YAAQpVcyuNoPVjCIAQAAMTCrRhNkrxzrgkZ1QP7XH0+hyJ2ul+4V0reJDlf1omJylP4/7vc+bxfB8EW1pfuYQWdBmzTBnE84h+7tH1SbFvNNNDul53BJsoOd79t8V0LGQdlXls3FWxITVSwuVlvCQTuJY1jq+uxrTTFFWpuqWQZnWkaLC/p8E7KRycXTaDSh7UW4k6ISRmssUftgDxwjZg43T6IbMyPf9dugLQSg9dKx4p8wyTcNern/fHfx7dAABbnUJkwmP+Y/eR4mfc9MJtIsJ3006DKH7PNoZ5JhtmnN9JTuhwfSEEnCrhs0j/cb2TrsSMo26w4C1xIaUNwZXE77YDci8VIkwEq9NvSTrTZUncSl0rsvoBz0j4QheSI=",
        "uri": "https://www.dior.com/"
    },
    "json": {
        "operationName": "SubscribeNewsletter",
        "variables": {
            "input": {
                "newsletters": {
                    "couture": true,
                    "beauty": false
                },
                "profiling": {},
                "user": {
                    "title": "Mme",
                    "email": "[email protected]",
                    "firstName": "afasdf",
                    "lastName": "qweqwe"
                }
            }
        },
        "query": "mutation SubscribeNewsletter($input: NewslettersOptinLegacyInput!) {\n  subscribeNewsletter(input: $input) {\n    success\n    errorMessages\n    errorDetail\n    __typename\n  }\n}\n"
    },
    "proxy": "socks5h://123:[email protected]:1234",
    "http2": true,
    "redirect": false,
    "ja3": "771,4865-4866-4867-49195-49199-49196-49200-52393-52392-49171-49172-156-157-47-53,5-43-18-10-13-51-23-16-17513-27-65281-35-45-0-11-21,29-23-24,0"
}

📤 响应数据格式

参数名 类型 说明
status Integer 调用是否成功,1=成功,0=失败,请使用该值判断
msg String 调用结果中文说明
id String 该次请求ID(唯一,可用作后续记录查询)
data.status Number 响应状态码
data.text String 响应体
data.cookies String 响应cookies
data.location String 重定向地址
cost String 验证耗时(毫秒)

响应示例

{
    "status": 1,
    "msg": "验证成功",
    "id": "049bfae2-4e84-4f29-99aa-a33688991355",
    "cost": "1414.15ms",
    "data": {
        "response": {
            "status": 200,
            "text": "{\"data\":{\"subscribeNewsletter\":{\"success\":true,\"errorMessages\":null,\"errorDetail\":null,\"__typename\":\"NewsletterOptinResponse\"}}}\n",
            "tls": {
                "ja3": "771,4865-4866-4867-49195-49199-49196-49200-52393-52392-49171-49172-156-157-47-53,51-23-43-45-27-17513-5-11-18-10-13-0-35-65281-16-21-41,29-23-24,0",
                "ja3_hash": "2795d91de2c9d7e36984350e338ddc9a",
                "akamai": "1:65536,2:0,3:1000,4:6291456,6:262144|15663105|0|m,a,s,p",
                "akamai_hash": "46cedabdca2073198a42fa10ca4494d0"
            },
            "cookies": "dtCookie=v_4_srv_5_sn_2A2A9F901F6BE925EF475041C744108A_perc_100000_ol_0_mul_1_app-3Aea7c4b59f27d43eb_1; _abck=6D43584C164A308CFC85AE1462D56CD1~0~YAAQpqg7FxN5F5+IAQAAXFwfvgpoxc0IH5DxeBHUCgDMC4vh8eHRZkqMr5rUFAxg+Zjwi0ouU4PF9WIT9rdcJtenDDu9T438N+xtPqd0JdzKePw3Y7u7OJkZe95KAzQ/L9VqCPLEvHC9Nap2ELrgIY32GRzJKj2qgPmuX4avgoopJmJ7hLhfq9rGwqkfBWaykDHs1MHb8xSjmr/bGbDHbpzSlThrEU8PlKxL/QWOIgPDyD/hZWi5wVyLG5zim5hVeykHZEiXgucS9u/gTHUGMmlz+EZU+Gj1rZ5/vMRqe9mieGJj+93IZElOAdT5SeXmmr++XZx8PEJaE8UTj+gCADhi74Up9AR7HxFcL5yI2uixdkQt28OYUzA4JwGmk2YpBDH4ZIVTnsxQ2TmlmtC4U3Avhw==~-1~-1~-1"
        }
    }
}

💻 代码示例

Python调用示例

安装依赖

pip install -U pynocaptcha -i https://pypi.python.org/simple

代码示例

from pynocaptcha import TlsV1Cracker

# TLS Client请求
cracker = TlsV1Cracker(
    user_token="xxx",
    url="https://www.baidu.com/",
)
ret = cracker.crack()
print(ret)