说明

该接口返回 sensor_data,可拿去破盾

请求地址

https://api.sakura-luo.top/get_sensor_data?token=xxxx

POST application/json

求参数

属性

类型

必须

说明

_abck

string

cookie中_abck的值

bm_sz

string

cookie中bm_sz的值

url

String

触发网址,一般是首页

ua

String

可指定破盾的ua,不指定随机返回

js_text

String

js报文

请求示例

{
    "_abck": "238B9642300FA4F75CA3DC6925F6BCD9~-1~YAAQVf6Yc/AQrPqBAQAAOwsa/gjB3EW6gEF2Vz2sca3/8zIuGAGII8ysl0U2O5K4jkUHKNGR9Z+M3UVVfCEgu2Me8sJUOU26A+OPgv+fJhOFwOyOqt9n9F9YgsiBD8E+3DFqj+usABqUI5JzfXHsfiPT3+/Mf/sN9zNhWrWQXARlC6eMg7HcSP60qR4Se1xU7av5SQ8SqN+Jyw8viFKTIwYu+2Nr0n/2bogGSnWA5SEQGITlyVRmhn6dYZ4u9BhH35oJSNPegDqeT5/ieCyoH9m+hwguJag66GTcg1W7oFOwAhoEDRNcHZ4D277eshU8/GyC6qTOvmhOlFHYJgS+aojA9Rhy9B0GvOdhP0w0wOdvLhHfedDagiDM8EUQ4S6DJhR+E1+CxQ7MBrCZvUxKUjm/srCJRZ4ZYQJzZgdXVdr8K9GcaSgu~-1~-1~-1",
    "bm_sz": "C9AFEB5218F51852E151F8351E714FED~YAAQrQrgeiGSnPqBAQAAwMva/RBoFicD2GuIRKWkAeAUweYlbbD+imzoIe0/DAvK/QuveyC4IELvtXRsYChAO1IjLNpTMu+so8jVtRjPso5lRhd0OJr4BGcYtdtuKyILoOSYq8g6IsnH0qS59/LqP7gt1FpAtv8436jaWe1uwyrOW2KkA25Z/gKWPkmv8afRooqaUfwVCFmklt5BQyuGF4AFLozfycVZajDSPls74TJJfgr2n3RoYdGxA1+ToDG1McgrBXNwlQUaFc7tY07W7vsmnmTNb6tKDeRnYWrNHNL/EVoOFY2dwXZpmZWpyy7aqSYa6iEOZ/XiQ+1eBur+c4Qvgl3ks12mRdyoAaHYIPp2HJkIrvDY0739YxF0ss5algnzhUajDClHd6/A3eizzXk=~3485746~4470337",
    "url": "https://wizzair.com/en-gb",
	"ua": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 Safari/537.36",
	"js_text": "(function(){c4();VtJ();tBJ();var sj=function(J3,rW){return J3==rW;};var hV=function(){return p4["window"]["navigator"]["userAgent"]["replace"](/\\|"/g,'');};function VtJ(){rG=+ ! +[]+! +[]+! +[],UI=+ ! +[],X5=+[],tA=+ ! +[]+! +[]+! +[]+! +[]+! +[]+! +[]+! +[],Mf=[+ ! +[]]+[+[]]-[],k4=! +[]+! +[]+! +[]+! +[],zr=[+ ! +[]]+[+[]]-+ ! +[]-+ ! +[],m4=+ ! +[]+! +[]+! +[]+! +[]+! +[]+! +[],vA=! +[]+! +[],tI=[+ ! +[]]+[+[]]-+ ! +[],K4=+ ! +[]+! +[]+! +[]+! +[]+! +[];}var mL=function(DN,Az){retur"
}

应参数

属性

类型

说明

sensor_data

string

sensor_data的值。使用该值可直接过Akamai

ua

String

建议使用该userAgent(如果传入ua,返回的传入的)

返回示例

{
    "sensor_data": "3;3485746;4470337;25,26,0,2,19,13;2!%kE~xs HOWa;p!8dTn,",
    "ua": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.93 Safari/537.36"
}

代码

from concurrent.futures import ThreadPoolExecutor

import primp
import requests
from loguru import logger


def primp_normal_test(_):
    while True:
        try:
            akm_url = "https://www.ana.co.jp/6Ml-ET/lZJN1o/eu/GcXo/L37QzE/aXuphmY9GYpGfYES/Lk8hTm9wYQE/NzIwImpq/Myw"
            requests_url = "https://www.ana.co.jp/zh/cn"

            client = primp.Client(impersonate="chrome_133", proxy='http://127.0.0.1:7890', timeout=30)
            ua = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36"

            headers = {
                "sec-ch-ua-platform": "\"Windows\"",
                "user-agent": ua,
                "sec-ch-ua": '"Not A(Brand";v="99", "Chromium";v="133", "Google Chrome";v="133"',
                "content-type": "text/plain;charset=UTF-8",
                "sec-ch-ua-mobile": "?0",
                "accept": "*/*",
                "sec-fetch-site": "same-origin",
                "sec-fetch-mode": "cors",
                "sec-fetch-dest": "empty",
                "accept-language": "zh-CN,zh;q=0.9",
                "priority": "u=1, i",
            }
            response = client.get(akm_url, headers=headers, )
            bm_sz = response.cookies['bm_sz']
            _abck = response.cookies['_abck']
            js_code = response.text
            data = {
                'url': requests_url,
                "bm_sz": bm_sz,
                "ua": ua,  # 可以指定,如果不指定,就随机返回
                "js_text": js_code,
                "abck": _abck
            }

            result = requests.post("https://api.sakura-luo.top/get_sensor_data?token=test", json=data).json()
            ua = result.pop("ua", None)
            response = client.post(akm_url, headers=headers, json=result)
            abck = response.cookies['_abck']
            if '~0~' in abck:
                logger.success({'_abck': abck, 'bm_sz': bm_sz})
            else:
                logger.error({'_abck': abck, 'bm_sz': bm_sz})
        except Exception as e:
            pass


if __name__ == '__main__':
    with ThreadPoolExecutor(max_workers=10) as executor:
        executor.map(primp_normal_test, range(executor._max_workers))