美文网首页编程之美-Pyhon藏兵谷简文
当你写爬虫时遇上Flash+加密时?教你一个方法很靠谱

当你写爬虫时遇上Flash+加密时?教你一个方法很靠谱

作者: 妄心xyx | 来源:发表于2018-12-27 22:36 被阅读102次

今天在摸鱼(划掉)逛V2EX的时候,有个帖子引起了我的注意,求助一个网站视频加密方式, 已排除是 base64 加密 - V2EX

https://www.v2ex.com/t/493201

帖子内容:

视频链接加密之后是这样的:

lxxt6jIID2Byq541xEB6F3u71bYaE5A/A-1dMFS4o9mx8uzpm81KxH25u1E29:Cl7Wg|lxxt4hGGB6F3u763zGD9i0X_4EBDh7CAC.6Irkx6q7oz7TYOL2uErB25u1E7_:hQ5Ue|lxxt4hGGB6F3u763zGD9i0X_4EBDh7CAC.6Irkx6q7oz7TYOL2uErB25u1E7_/hQ5Ue|lxxt4hGGB6F3u763zGD9i0X_4EBDh7CAC.6Irkx6q7oz7TYOL2uErB25u1E7_hQ5Ue|lxxt4hGGB6F3u763zGD9i0X_4EBDh7CAC.6Irkx6q7oz7TYOL2uErB25u1E7_.hQ5Ue|lxxt4hGGB6F3u763zGD9i0X_4EBDh7CAC.6Irkx6q7oz7TYOL2uErB25u1E7__hQ5Ue|lxxt4hGGB6F3u763zGD9i0X_4EBDh7CAC.6Irkx6q7oz7TYOL2uErB25u1E7_AhQ5Ue|lxxt4hGGB6F3u763zGD9i0X_4EBDh7CAC.6Irkx6q7oz7TYOL2uErB25u1E7bhQW5e|lxxt4hGGB6F3u763zGD9i0X_4EBDh7CAC.6Irkx6q7oz7TYOL2uErB25u1E7ChQW5e|lxxt4hGGB6F3u763zGD9i0X_4EBDh7CAC.6Irkx6q7oz7TYOL2uErB25u1E7dhQW5e

网站链接在这: http://www.tvsky.tv/Industry/Show/278/33875/

请问是什么加密, 求助。

作为一个助人为乐的好青年,当然要顺手帮楼主看一下啦

当你写爬虫时遇上Flash+加密时?教你一个方法很靠谱

打开这个网站看看,这是一个用Flash播放器加载并播放视频的页面,传入播放器的参数如帖中所述是有加密的

当你写爬虫时遇上Flash+加密时?教你一个方法很靠谱

使用Chrome的开发者工具查看播放器元素

传入播放器的参数:

flvurl=lxxt6jIID2Byq541xEB6F3u71bYaE5A/A-1dMFS4o9mx8uzpm81KxH25u1E29:Cl7Wg|lxxt4hGGB6F3u763zGD9i0X_4EBDh7CAC.6Irkx6q7oz7TYOL2uErB25u1E7_:hQ5Ue|lxxt4hGGB6F3u763zGD9i0X_4EBDh7CAC.6Irkx6q7oz7TYOL2uErB25u1E7_/hQ5Ue|lxxt4hGGB6F3u763zGD9i0X_4EBDh7CAC.6Irkx6q7oz7TYOL2uErB25u1E7_hQ5Ue|lxxt4hGGB6F3u763zGD9i0X_4EBDh7CAC.6Irkx6q7oz7TYOL2uErB25u1E7_.hQ5Ue|lxxt4hGGB6F3u763zGD9i0X_4EBDh7CAC.6Irkx6q7oz7TYOL2uErB25u1E7__hQ5Ue|lxxt4hGGB6F3u763zGD9i0X_4EBDh7CAC.6Irkx6q7oz7TYOL2uErB25u1E7_AhQ5Ue|lxxt4hGGB6F3u763zGD9i0X_4EBDh7CAC.6Irkx6q7oz7TYOL2uErB25u1E7bhQW5e|lxxt4hGGB6F3u763zGD9i0X_4EBDh7CAC.6Irkx6q7oz7TYOL2uErB25u1E7ChQW5e|lxxt4hGGB6F3u763zGD9i0X_4EBDh7CAC.6Irkx6q7oz7TYOL2uErB25u1E7dhQW5e&isautoplay=1&adswf=

抓包发现有一个.flv文件的链接,应该就是播放器加载出来的视频

当你写爬虫时遇上Flash+加密时?教你一个方法很靠谱

使用Chrome的开发者工具查看网络请求

全局搜索这个URL的部分内容是搜不到的,判断出这个URL应该是在播放器中对传入的flvurl参数进行解密,然后再加载出视频

当你写爬虫时遇上Flash+加密时?教你一个方法很靠谱

那么,遇到这种情况的时候我们应该怎么做才能破解出这个解密URL的过程呢?

首先,我们需要将这个页面上的Flash播放器给逆向一下,就像在爬HTML5视频网站碰到加密参数时逆向JavaScript一样。

但是Flash播放器是一个被编译后的.swf文件,我们并不能像JavaScript那样直接看到代码,需要先进行反编译。

是时候祭出JPEXS了,在GitHub上可以找到

https://github.com/jindrapetrik/jpexs-decompiler/releases

下载完后启动它,界面长这样:

当你写爬虫时遇上Flash+加密时?教你一个方法很靠谱

JPEXS启动界面

默认的语言是英语,可以切换成中文,在Settings – Change language里选择

当你写爬虫时遇上Flash+加密时?教你一个方法很靠谱

JPEXS切换成中文

然后我们将这个播放器的.swf文件给下载下来,并使用JPEXS打开

播放器文件地址在源页面的HTML中可以看到

http://www.tvsky.tv/FlvPlay/Playerx.swf

当你写爬虫时遇上Flash+加密时?教你一个方法很靠谱

用JPEXS打开播放器文件

然后我们有两种方式快速定位到可能存在解密代码的位置

第一种方式:

打开后找到脚本组下frame1的DoAction脚本

当你写爬虫时遇上Flash+加密时?教你一个方法很靠谱

点击后窗口右侧会反编译这个脚本的内容,并展示出反编译出来的AS源代码和P代码(类似于汇编语言),我们只需要看AS源代码的部分就行了

当你写爬虫时遇上Flash+加密时?教你一个方法很靠谱

播放器加载状态

根据在网页中播放器的样子,在加载时会有一个“正在加载Flv文件”的字样,直接按Ctrl+F搜索它

当你写爬虫时遇上Flash+加密时?教你一个方法很靠谱

搜索反编译出来的代码中的字符串

找到init函数

第二种:

随便找一个脚本打开,然后按Ctrl+Shift+F打开全局搜索,同样搜索“正在加载Flv文件”

当你写爬虫时遇上Flash+加密时?教你一个方法很靠谱 当你写爬虫时遇上Flash+加密时?教你一个方法很靠谱

全局搜索

快速定位出加载视频部分后,根据init函数这里的代码可以看出,loc2就是被传进播放器的flvurl

当你写爬虫时遇上Flash+加密时?教你一个方法很靠谱

那么下面的这部分就是它的解密操作了

当你写爬虫时遇上Flash+加密时?教你一个方法很靠谱

然后将反编译出来的ActionScript代码的解密URL部分改写成Python代码:

当你写爬虫时遇上Flash+加密时?教你一个方法很靠谱 当你写爬虫时遇上Flash+加密时?教你一个方法很靠谱 当你写爬虫时遇上Flash+加密时?教你一个方法很靠谱

执行一下看看效果

当你写爬虫时遇上Flash+加密时?教你一个方法很靠谱

BOOM!学会了吗?

相关文章

  • 当你写爬虫时遇上Flash+加密时?教你一个方法很靠谱

    今天在摸鱼(划掉)逛V2EX的时候,有个帖子引起了我的注意,求助一个网站视频加密方式, 已排除是 base64 加...

  • 当你写爬虫时遇上Flash+加密的解决方式

    今天在摸鱼逛V2EX的时候,有个帖子引起了我的注意 帖子内容: 视频链接加密之后是这样的:lxxt6jIID2By...

  • 小故事,第五天

    第五天: 《靠谱:顶尖咨询师教你的工作基本功》 字数:768字 《应付,不是事》 大石刚工作时,每次别人提问题时,...

  • 当你遇上流氓时

    上周带核桃去超市,小孩子的记性太好,兴趣又很专一,一进门连推车都不要,直奔游乐区,指着两匹高头华丽白马车,...

  • 有个很靠谱的男朋友是什么样的体验

    靠谱的男朋友很细心 逛街时拉着你的手 走路让你走在马路内侧 生怕你横冲直撞出什么事 靠谱的男朋友很温柔 吵架时先低...

  • python urllib2 获取所有响应头(response

    写爬虫时如果需要获取所有的响应头,可以用如下方法:

  • 如何在面试时识别不靠谱公司

    “如何在面试时判断一个公司是靠谱的?剔除了不靠谱的,剩下的不就靠谱了......” 一 我所经历的不靠谱面试 你有...

  • 靠谱

    day5 书名:《靠谱:顶尖咨询师教你工作的基本功》 字数:713 《先思考五分钟》 我曾经有一个毛病,被提问的时...

  • 当你迷茫时,当你写不下去时......

    写作写久了,总会有迷茫的时期,总会有写不下去的时期,总会出现焦虑,不知所措时期。 深知这样下去不可以,越陷越深,越...

  • 做人要有底线

    01 什么叫靠谱? 最近听到最多一个词是“靠谱”,有人夸我很靠谱,我也夸过别人靠谱。今天想了下靠谱的表现是什么? ...

网友评论

    本文标题:当你写爬虫时遇上Flash+加密时?教你一个方法很靠谱

    本文链接:https://www.haomeiwen.com/subject/tphjlqtx.html