极志愿

说明

# URL
https://www.jizhy.com/44/rank/school

# 接口
https://www.jizhy.com/open/sch/rank-list

spider.py

import requests, time, urllib
from hashlib import md5

cookies = {
    'PI': '44',
}

headers = {
    'accept': 'application/json, text/plain, */*',
    'accept-language': 'zh-CN,zh;q=0.9',
    'cache-control': 'no-cache',
    'pragma': 'no-cache',
    'priority': 'u=1, i',
    'referer': 'https://www.jizhy.com/44/school/library',
    'sec-ch-ua': '"Not(A:Brand";v="99", "Google Chrome";v="133", "Chromium";v="133"',
    'sec-ch-ua-mobile': '?0',
    'sec-ch-ua-platform': '"macOS"',
    'sec-fetch-dest': 'empty',
    'sec-fetch-mode': 'cors',
    'sec-fetch-site': 'same-origin',
    'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36',
    # 'cookie': 'PI=44',
}

params = {
    'page': '1',
    'page_len': '20',
    'diploma_id': '7',
    'wenli': '0',
    'app_id': '98357f659cf8fb6001cff80f7c6b85f2',
    'ts':  str(int(time.time() * 1000)),
    'platform': 'desktop',
    'v': '210',
    # 'sign': '71F3B0B758091ED334486F4E9FE28A25',
}

def getSign(params):
    sorted_params = dict(sorted(params.items()))
    parse_str = urllib.parse.urlencode(sorted_params)
    str = "{" + parse_str + "}&key=146fd1e66513611ac7af69f21f1d7725"
    # print(str)
    obj = md5()
    obj.update(str.encode("utf-8"))
    sign = obj.hexdigest().upper()
    return sign

params['sign'] = getSign(params)
# print(params['sign'])

response = requests.get('https://www.jizhy.com/open/sch/rank-list', params=params, cookies=cookies, headers=headers)
print(response.text)

Last updated