前提:如果在pycharm中无法直接运行js代码,我们可以
下载这个我们就可以直接执行js,不必在py文件里面执行
1:在对于网站登录后,我们一般会拿到cookies,然后进行登录验证;但是有些网站并不会给你cookeis
他会在登录的时候给你一个took,然后拿took进行验证,took的时效性比较短,所以我们需要逆向他
在登录是他对于我们的密码加密,然后加了一个sig,直接搜索接口
我们可以看到在sig时候密码已经被加密,所以我们先解决pwd加密;
把搜索所有的pwd断点,bebug停在那里那里就是
是Object(S["a"])这个函数明文密码加密的
下面就是部js代码,部全js代码后得到加密后的pwd
sig:
可以看到s(e)=e,
sig和pwd一样
老样子<爬虫>叫给网站
https://curlconverter.com/
需要数据中的token解决,现在只有sing一个遍的参数,必须对token逆向,因为他是一个具有时效性的可变参数
下来找最后一个sign
sign
可以看到了k函数是一个sha256方式的加密(信息摘要算法)
sign加密:
const crypto = require('crypto');
n={
"no": "dy3002",
"data": {
"rankTime": "2022-09-19 - 2022-09-25"
}
}
e=(new Date).getTime()
function E(n, e) {
return sha256encrypt("param=" + JSON.stringify(n) + "×tamp=" + e + "&tenant=1&salt=" + "kbn%&)@<?FGkfs8sdf4Vg1*+;`kf5ndl$")
}
function sha256encrypt(text) {
return crypto.createHash("sha256").update(text).digest('hex')
}
console.log(E(n, e))