Python 爬虫进阶必备 | 某代理免费页面数据加密分析
【摘要】 今日网站aHR0cHM6Ly93d3cuYmFpYmlhbmlwLmNvbS9ob21lL2ZyZWUuaHRtbA==现在做代理也不容易啊,时不时要和友商对线,还得时刻警惕吃免费饭的风险,大家都不容易。加密分析与定位老规矩先看网站的加密在哪里?访问网页可以看到页面上是展示着免费 IP 的信息“爬虫新手经常喜欢整点免费代理池,爬爬妹子图啥的遇到这个网站就比较难受了,IP 在页面源码上的展示是...
今日网站
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 修改成 $
然后就完事了,结果如下
又是一篇热气腾腾的新手教学文。
好了,今天的文章就到这里,我们下次再会~
【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)