请求头参数mcode加密
检查 网络 搜索要爬取的内容 标头 请求标头 mcode(是base64加密的)
搜索关键字 (mcode) 或者路径(p_sysapi1007) 找到js 在来源面板打开 继续搜索p_sysapi1007 mcode: indexcode.getResCode() 这行设置断点 刷新 单步调试 把整体方法复制出来(创建请求头参数加密 mcode js.js)
js
function getResCode() {
var time = Math.floor(new Date().getTime() / 1000);
console.log(time) 检查时间戳位数
return missjson("" + time);
}
function missjson(input) {
var keyStr = "ABCDEFGHIJKLMNOP" + "QRSTUVWXYZabcdef" + "ghijklmnopqrstuv" + "wxyz0123456789+/" + "=";
var output = "";
var chr1, chr2, chr3 = "";
var enc1, enc2, enc3, enc4 = "";
var i = 0;
do {
chr1 = input.charCodeAt(i++);
chr2 = input.charCodeAt(i++);
chr3 = input.charCodeAt(i++);
enc1 = chr1 >> 2;
enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);
enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);
enc4 = chr3 & 63;
if (isNaN(chr2)) {
enc3 = enc4 = 64;
} else if (isNaN(chr3)) {
enc4 = 64;
}
output = output + keyStr.charAt(enc1) + keyStr.charAt(enc2)
+ keyStr.charAt(enc3) + keyStr.charAt(enc4);
chr1 = chr2 = chr3 = "";
enc1 = enc2 = enc3 = enc4 = "";
} while (i < input.length);
return output;
}
console.log(getResCode())
py
# Math.floor(new Date().getTime() / 1000);
import time
import math
import base64
time1 = math.floor(time.time())
print(time1) #1.根据js,检查位数是不是10位 2.time1 是不是new Date()生成的,不是就是服务器生成的,找到服务器地址,看具体是如何生成的
mcode = base64.b64encode(str(time1).encode()).decode()
print(mcode)
                    
                
                
            
        
浙公网安备 33010602011771号