import requests
from Crypto.Cipher import AES
from base64 import b64encode
url=""
resp=requests.post(url)
#print(resp.text)
data={
"csrf_token":"",
"cursor":"-1",
"offset":"0",
"orderType":"1",
"pageNo":"1",
"pageSize":"20",
"rid":"R_SO_4_1913478990",
"threadId": "R_SO_4_1913478990"
}
f = "5280104e0300e0b509f6259df8642dbc35662901477df22677ec152b5ff68ace615bb7b725152b3ab17a876aea8a5aa76d2e417629ec4ee341f56135fccf6912ecbda92557c93870114af6c9d05c4f7f0c3685b7a46bee255932575cce10b424d813cfe4875d3e82047b97ddef52741d546b8e289dc6935b3ece0462db0a22b8e7"
g = "0CoJUm6Qyw8W8jud"
e = "010001"
i = "EHY8ubopgwjbhlx0"
def seckey():
return "41ac06ccdff727076c9d6bd85217d8adfd71c79c1b16523387951f34ba2bf8ebc8400e88e5a444bc9c53a6f7d4579b12e9d76782b66836e32e5fa4ab621e24036148c142792e6ac5245a52de7f98b1fc33f384aacf5a619c3937878a3333965221797894681f6a187e94d6e627e67d74f9de560dec7e7c97d66fb8f2e62a103d"
'''#加密过程
function a(a) {
var d, e, b = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789", c = "";
for (d = 0; a > d; d += 1)
e = Math.random() * b.length,
e = Math.floor(e),
c += b.charAt(e);
return c
}
function b(a, b) {
var c = CryptoJS.enc.Utf8.parse(b)
, d = CryptoJS.enc.Utf8.parse("0102030405060708")
, e = CryptoJS.enc.Utf8.parse(a)
, f = CryptoJS.AES.encrypt(e, c, {
iv: d,
mode: CryptoJS.mode.CBC
});
return f.toString()
}
function c(a, b, c) {
var d, e;
return setMaxDigits(131),
d = new RSAKeyPair(b,"",c),
e = encryptedString(d, a)
}
function d(d, e, f, g) {
var h = {}
, i = a(16);
return h.encText = b(d, g),
h.encText = b(h.encText, i),
h.encSecKey = c(i, e, f),
h
}
function e(a, b, d, e) {
var f = {};
return f.encText = c(a + e, b, d),
f
}'''
# d e '010001' f '5280104e0300e0b509f6259df8642dbc35662901477df22677ec152b5ff68ace615bb7b725152b3ab17a876aea8a5aa76d2e417629ec4ee341f56135fccf6912ecbda92557c93870114af6c9d05c4f7f0c3685b7a46bee255932575cce10b424d813cfe4875d3e82047b97ddef52741d546b8e289dc6935b3ece0462db0a22b8e7'
# g '0CoJUm6Qyw8W8jud'
def get_params(data):#默认收到的是字符串
first= params(data,a)
sec=params(first,i)
return sec
def to_16():
pad=16-len(data)%16
data += chr(pad)*pad
return data
def params(data,key):
data = to_16(data)
aes = AES.new(key=key.encode("utf-8"), IV="0102030405060708".encode("utf-8"), mode=AES.MODE_CBC)
bs=aes.encrypt(data)
return str(b64encode(bs),"utf-8")
pass
res=requests.post(url,data={
"params": get_params(json.dumps(data)),
"seckey()":seckey()
})