2020 文书爬虫 仅供学习 若被他人用于商业用途 与本人无关

**

文书爬虫思路

**

1.分析需求
图1
2020 文书爬虫 仅供学习 若被他人用于商业用途 与本人无关
图2
2020 文书爬虫 仅供学习 若被他人用于商业用途 与本人无关
需要获取两个图片里的内容
2.分析请求

图1的请求
2020 文书爬虫 仅供学习 若被他人用于商业用途 与本人无关

图2的请求
2020 文书爬虫 仅供学习 若被他人用于商业用途 与本人无关
3.分析得出需要请求图1的返回值解密出docid,从而获取图2的具体内容
2020 文书爬虫 仅供学习 若被他人用于商业用途 与本人无关
4.分析完成,开始模拟请求数据
模拟对象{
pageId
s21 :“贷款”,
sortFields:“s50:desc”,
ciphertext
pageNum:“1”,
queryCondition:’[{“key”:“s21”,“value”:“贷款”}]’,
cfg:“[email protected]”,
__RequestVerificationToken
}
这些对象都可以从js文件中获取最终只有三个值需要找
pageId,ciphertext,__RequestVerificationToken

1.pageId
分析网址发现pageId在网址中
2020 文书爬虫 仅供学习 若被他人用于商业用途 与本人无关
在js中找到获取pageId方法
2020 文书爬虫 仅供学习 若被他人用于商业用途 与本人无关
可以用代码获取$.WebSite.getParameter(“pageId”);
2020 文书爬虫 仅供学习 若被他人用于商业用途 与本人无关
也可以用js里的uuid
2020 文书爬虫 仅供学习 若被他人用于商业用途 与本人无关
uuid: function(){
var guid = “”;
for (var i = 1; i <= 32; i++) {
var n = Math.floor(Math.random() * 16.0).toString(16);
guid += n;
// if ((i == 8) || (i == 12) || (i == 16) || (i == 20)) guid +=
// “-”;
}
return guid;
},
2._RequestVerificationToken
2020 文书爬虫 仅供学习 若被他人用于商业用途 与本人无关
js中获取random
random: function(size){
var str = “”,
arr = [‘0’, ‘1’, ‘2’, ‘3’, ‘4’, ‘5’, ‘6’, ‘7’, ‘8’, ‘9’, ‘a’, ‘b’, ‘c’, ‘d’, ‘e’, ‘f’, ‘g’, ‘h’, ‘i’, ‘j’, ‘k’, ‘l’, ‘m’, ‘n’, ‘o’, ‘p’, ‘q’, ‘r’, ‘s’, ‘t’, ‘u’, ‘v’, ‘w’, ‘x’, ‘y’, ‘z’, ‘A’, ‘B’, ‘C’, ‘D’, ‘E’, ‘F’, ‘G’, ‘H’, ‘I’, ‘J’, ‘K’, ‘L’, ‘M’, ‘N’, ‘O’, ‘P’, ‘Q’, ‘R’, ‘S’, ‘T’, ‘U’, ‘V’, ‘W’, ‘X’, ‘Y’, ‘Z’];
for(var i=0; i<size; i++){
str += arr[Math.round(Math.random() * (arr.length-1))];
}
return str;
},

3.ciphertext
从图片中分析出ciphertext的值在cipher()函数中
2020 文书爬虫 仅供学习 若被他人用于商业用途 与本人无关
2020 文书爬虫 仅供学习 若被他人用于商业用途 与本人无关
这里用了des3的加解密,当然万变不离其宗,肯定放在js的某个地方等着调用
2020 文书爬虫 仅供学习 若被他人用于商业用途 与本人无关
js找到
2020 文书爬虫 仅供学习 若被他人用于商业用途 与本人无关
完成图1 的请求
5.请求成功后得到加密文还有**
2020 文书爬虫 仅供学习 若被他人用于商业用途 与本人无关
2020 文书爬虫 仅供学习 若被他人用于商业用途 与本人无关
2020 文书爬虫 仅供学习 若被他人用于商业用途 与本人无关
解码成功后的rowkey就是docid
图2请求成功
之后依然还是需要调用des3的解码
2020 文书爬虫 仅供学习 若被他人用于商业用途 与本人无关
流程与上图一致
2020 文书爬虫 仅供学习 若被他人用于商业用途 与本人无关

如果对你有帮助请点赞分享
有钱的可以经济支持
2020 文书爬虫 仅供学习 若被他人用于商业用途 与本人无关