Python 爬虫进阶必备 | 某代理免费页面数据加密逻辑分析
共 1151字,需浏览 3分钟
·
2021-07-29 09:10
第一时间关注Python技术干货!
今日网站
aHR0cHM6Ly93d3cuYmFpYmlhbmlwLmNvbS9ob21lL2ZyZWUuaHRtbA==
现在做代理也不容易啊,时不时要和友商对线,还得时刻警惕吃免费饭的风险,大家都不容易。
加密分析与定位
老规矩先看网站的加密在哪里?
访问网页可以看到页面上是展示着免费 IP 的信息
“爬虫新手经常喜欢整点免费代理池,爬爬妹子图啥的
遇到这个网站就比较难受了,IP 在页面源码上的展示是下面这样的
IP 信息的位置是下面这样的代码
FFsempstress('ZGLlZGHkAwZ3AwDmYwV1ZP4kZwDhBGtkAwZlAmZ5BQpl');
像这类加密就是检索就能一把梭出来的加密
而且因为在页面上加载的所以想通过Initiator
找堆栈也是没有值的
检索的结果如下
只有两个,出去free.html
另外一个应该就是加密的位置了。
进入 js 文件,看到下面的代码
function FFsempstress(s) {
document.write(ddip(s));
}
可以看到FFsempstress
这里调用的其实还是ddip
这个方法,在页面里重新检索ddip
这个方法
可以看到如下的位置
ddip
在一个eval
里,回顾上一节的内容
eval
处理可以直接一把梭出来
function ddip(e0){e1=r13(e0.toString());e2=$.base64.decode(e1);e3=e2.toString().substr(10);l3=e3.length;e4=e3.substr(0,l3-10);return e4}
这里可以看到用到了r13...
等函数,继续在页面检索
可以看到在上一个eval
里面
解开是下面的代码
和之前的代码拼在一块,愉快的运行一下
很好,报错了,报错不用怕,先看看错误提示
提示如下
提示$
没有定义,我们自己定义一下,
var $ = {};
直接找到这个$
的位置复制粘贴进去
“把匿名函数传入的 jquery 修改成 $
然后就完事了,结果如下
又是一篇热气腾腾的新手教学文。
好了,今天的文章就到这里,我们下次再会~
使用 “钞” 能力 | 安利两套安卓+JS逆向课程,适合初中高级爬虫逆向
对了,看完记得一键四连,这个对我真的很重要。