首先,我要爬的是这个网站:http://www.66ip.cn/nm.html,我想做个直接调用网站的接口获取代理的爬虫

这个接口看上去似乎很简单,直接输入需要的代理条件后,点击提取即可

点击提取后就是一个个ip了,

废话不多说,按f12点开,

发现需要两个cookie值,不知道从哪来,删掉cookie后,刷新页面再看看。

同样有这两个cookie,不过是新值,并且出了jquery.js没别的文件了。奇怪了,cookie怎么出来的,不过可以注意到被重定向了。

所以,把f12的net work下的 preserve log 勾选(新手才学到的),这样就可以看到所有的包了

三、

果然找到一个cookie,但是还有一个cookie值呢?查看这个521报文看不到内容,使用postman试试(这里一定要注意,今天被坑了很久,postman是依托于chrome的,chrome出于安全考虑,限制了postman的cookie功能,需要下载插件,点击一下会跳转到谷歌应用商店postman interceptor,然后在postman中打开改插件即可。还有要注意的是,chrome上的cookie,是会被postman使用的,记得删掉。下图的postman interceptor点开了)

四,然后发现果然执行了一段js代码,拿去格式化,简单修改,使用nodejs运行了一下,其实就是一句,document.cookies='***'的代码

五,这个还算好做,分离出来就行,然后发现,诶,每次没cookie的请求都是不同的js代码,干脆就提取出js代码,然后,替换部分js代码, 即可获取_ydclearance

@staticmethod
def get_66ip_cookies(url):
"""
66ip的加密cookie破解
:param self:
:param url:
:return:
"""
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko)'
' Chrome/68.0.3440.106 Safari/537.36'}
res = requests.get(url, headers=headers)
yd_cookie = res.cookies['yd_cookie']
groups = re.search('<script language="javascript"> window.onload=setTimeout\("(.*?)", 200\); (.*?)</script>',
res.text)
x = groups.group(1)
y = groups.group(2)
y = y.replace('eval("qo=eval;qo(po);");', 'result = /_ydclearance=(.*?);/.exec(po)[1]; return result;')
jsfunc = execjs.compile(y)
_ydclearance = jsfunc.call(x[:2], re.findall('[0-9]+', x)[0])
return yd_cookie, _ydclearance

记第一次破解js加密代码的更多相关文章

  1. Python爬虫—破解JS加密的Cookie

    前言 在GitHub上维护了一个代理池的项目,代理来源是抓取一些免费的代理发布网站.上午有个小哥告诉我说有个代理抓取接口不能用了,返回状态521.抱着帮人解决问题的心态去跑了一遍代码.发现果真是这样. ...

  2. 爬虫破解js加密(一) 有道词典js加密参数 sign破解

    在爬虫过程中,经常给服务器造成压力(比如耗尽CPU,内存,带宽等),为了减少不必要的访问(比如爬虫),网页开发者就发明了反爬虫技术. 常见的反爬虫技术有封ip,user_agent,字体库,js加密, ...

  3. Python破解js加密实例(有道在线翻译)

    在爬虫爬取网站的时候,经常遇到一些反爬虫技术,比如: 加cookie,身份验证UserAgent 图形验证,还有很难破解的滑动验证 js签名验证,对传输数据进行加密处理 对于js加密经过加密传输的就是 ...

  4. python爬虫_从零开始破解js加密(一)

    除了一些类似字体反爬之类的奇淫技巧,js加密应该是反爬相当常见的一部分了,这也是一个分水岭,我能解决基本js加密的才能算入阶. 最近正好遇到一个比较简单的js,跟大家分享一下迅雷网盘搜索_838888 ...

  5. 通过C#调用,实现js加密代码的反混淆,并运行js函数

    前一篇我测试了vba调用htmlfile做反混淆,并执行js加密函数的代码.本文换成C#实现. 联系QQ:564955427 C#操作JS函数,可以通过ScriptControl组件,但这个组件只能在 ...

  6. 破解JS加密:url unicode加密而已

    加密所在的地方:http://tool.chinaz.com/Tools/UrlCrypt.aspx?url=www.baidu.com 结果: http://%77%77%77%2E%62%61%6 ...

  7. 兄弟们,我打算抠100个网站JS加密代码召唤,一个也跑不掉,这次轮到小虎牙

    摘要:友情提示:在博客园更新比较慢,有兴趣的关注知识图谱与大数据公众号吧.本次研究虎牙登录密码加密JS代码,难度不大,依然建议各位读者参考文章独自完成,实在抠不出来再参考这里的完整代码:从今天开始种树 ...

  8. websocket直接绕过JS加密的方式

    目录 websocket--hook 服务端--WebSocketServer.js 客户端注入JS代码 python开端口 get_data.py 文件方式 get_user_id.py 文件方式 ...

  9. 当爬虫遇到js加密

    当爬虫遇到js加密 我们在做python爬虫的时候经常会遇到许多的反爬措施,js加密就是其中一种. 破解js加密的方法也有很多种: 1.直接驱动浏览器抓取数据,无视js加密. 2.找到本地加密的js代 ...

随机推荐

  1. css中属性值继承小解

    继承:html元素可以从父元素那里继承一部分css属性,即使当前元素没有定义该属性. 1.css可以和不可以继承的属性 不可继承的:display.margin.border.padding.back ...

  2. 从构建分布式秒杀系统聊聊验证码 给大家推荐8个SpringBoot精选项目

    前言 为了拦截大部分请求,秒杀案例前端引入了验证码.淘宝上很多人吐槽,等输入完秒杀活动结束了,对,结束了...... 当然了,验证码的真正作用是,有效拦截刷单操作,让羊毛党空手而归. 验证码 那么到底 ...

  3. 自制MVC框架的插件与拦截器基础

    上篇谈到我自己写的MVC框架,接下来讲讲插件及拦截器! 在处理一些通用的逻辑最好把它封装一个插件或者拦截器,以便日后可以直接拿过来直接使用.在我的框架中可以通过继承以下抽象类来实现插件或者拦截器. 1 ...

  4. kali2.0下配置Metasploit+postgresql链接

    工具/原料   kali2.0 方法/步骤     1.postgresql是本身没有启动的.所以需要启动. service postgresql start   2.通过命令进入配置 sudo -u ...

  5. JavaScript No Overloading 函数无重载之说

    在ECMAScript语言中,函数名字仅仅只是是一个指针(能够觉得是引用),以下的代码: "use strict"; function sum(a,b){ return a+b; ...

  6. java中的Closeable接口

    一.概述 该接口位于java.io包下,声明例如以下:public interface Closeable Closeable 是能够关闭的数据源或目标. 调用 close 方法可释放对象保存的资源( ...

  7. 反射学习2-通过反射机制动态获取属性的值模拟Struts的自动赋值

    一.准备知识:   Java反射机制   处理事务的JavaBean   String的操作常用方法 二.模拟步骤   这里我们通过反射机制动态获取属性的值模拟Struts中的自动赋值. 1.首先创建 ...

  8. python-hanoi

    #!/usr/bin/env python #-*- coding:utf-8 -*- ############################ #File Name: hanoi.py #Autho ...

  9. 广告过滤神器(ADMuncher)4.93

    Ad Muncher 介绍:        浏览网页时,冷不防地被网站播放的MIDI音乐声音吓一跳,或是因为弹出的广告窗口碍事,而影响你上网络的心情.Ad Muncher支持Netscape.Inte ...

  10. target="_blank" 导致的钓鱼攻击

    挺久的漏洞,之前没仔细看现在看了下 直接构建实验环境: test1.html: <!DOCTYPE html> <html> <head> <meta cha ...