python操作网页flash视频_Python爬取FLASH播放器中的资料
Python爬取FLASH播放器中的资料。
一、首先了解一下AMF协议:AMF(Action Message Format)是Flash与服务端通信的一种常见的二进制编码模式,其传输效率高,可以在HTTP层面上传输。现在很多Flash WebGame都采用这样的消息格式。
AMF协议是基于Http协议的.
它的内容处理过程大致是这样:
1.从客户端获取Http请求(Request)流.
2.对流进行解串行化(Deserialize),得到服务器端程序能够识别的数据,并建立一个响应(Response)消息
3.Debug开始
4.对流进行各种处理(记录、许可、服务)得到返回值
5.对响应流进行串行化
6.发送Http响应给客户端
二、Python与amf进行互通需要用到PyAMF
1、下载pyamf
https://pypi.python.org/pypi/PyAMF
2、安装pyamf
下载完成之后解压出来,打开DOS命令进入pyamf目录,
执行下列命令,安装pyamf框架
python setup.py install --disable-ext
三、获取关键字节伪造访问
首先使用charles抓包工具,抓取AMF包,得到请求/应答的AMF数据,对AMF格式的请求和响应的数据进行分析。
解密的POST DATA如下图所示:
构建flex.messaging.messages.RemotingMessage信息msg= messaging.RemotiongMessage(messageId=str(uuid.uuid1()).upper(),\
clometOd=None,\
operation='playeSource',\
destination='metaDataService',\
timeTolive=0,\
timestamp=0
)
msg.body=['xxx', 'aaaaa', 'ccccc','ddddd', '', 'eeeee', '']
msg.headers['DSEndpoint']='my-amf'msg.headers['DSId']=str(uuid.uuid1()).upper()
......
得到的Response如下图:
四、具体实现代码如下:import urllib2import uuidimport pyamffrom pyamf import remotingfrom pyamf.flex import messaging# 构造flex.messaging.messages.RemotingMessage消息msg= messaging.RemotiongMessage(messageId=str(uuid.uuid1()).upper(),\
clometOd=None,\
operation='playeSource',\
destination='metaDataService',\
timeTolive=0,\
timestamp=0
)
msg.body = ['xxx', 'aaaaa', 'ccccc','ddddd', '', 'eeeee', '']
msg.headers['DSEndpoint'] = 'my-amf'msg.headers['DSId'] = str(uuid.uuid1()).upper()# 按AMF协议编码req = remoting.Request('null', body=(msg,))
env = remoting.Envelope(amfVersion=pyamf.AMF3)
env.bodies = [('/1',req)]
data = bytes(remoting.encode(env).read())# 提交请求url = 'http://xxxx.xx.xx/amf'req = urllib2.Request(url,data,headers={'Content-Type':'application/x-amf'})# 解析返回数据oepner = urllib2.build_opener()# 解码AMF协议返回的数据resp = remoting.decode(opener.open(req).read())print resp.bodies[0][1].body.body['xxxx']
......
作者:迷途老鹰
链接:https://www.jianshu.com/p/0f3009021fd9
打开App,阅读手记
python操作网页flash视频_Python爬取FLASH播放器中的资料相关推荐
- python搜索网页特定区域内容_Python爬取练习:指定百度搜索的内容并提取网页的标题内容...
本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. 以下文章源于白菜学python ,作者小白菜 刚接触Python的新手.小白,可以复制下面的链接去 ...
- python爬取资料_Python爬取FLASH播放器中的资料
Python爬取FLASH播放器中的资料. 一.首先了解一下AMF协议:AMF(Action Message Format)是Flash与服务端通信的一种常见的二进制编码模式,其传输效率高,可以在HT ...
- python 爬取搞笑视频_Python爬取知乎上搞笑视频,一顿爆笑送给大家
前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者:Huangwei AI 来源:Python与机器学习之路 PS:如有需 ...
- python爬抖音短视频_python爬取抖音小视频
import os,json,requests #伪装头 headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) App ...
- python爬取flash数据_爬取flash数据
关于html爬取数据的文章已经有很多了,我今天主要和大家交流的是如何爬取flash网页的数据.这方面资料相对比较少,主要是html5兴起后现在flash站很少了,不过用于技术研究还是可以尝试一下,这篇 ...
- Python爬虫:输入公司名称,爬取企查查网站中的公司信息
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. 以下文章来源于Python爬虫数据分析挖掘 ,作者:李运辰 根据输入的公司名称来爬取企查查网 ...
- python爬取网页json数据_python爬取json数据库
手把手教你使用Python抓取QQ音乐数据(第一弹) [一.项目目标] 获取 QQ 音乐指定歌手单曲排行指定页数的歌曲的歌名.专辑名.播放链接. 由浅入深,层层递进,非常适合刚入门的同学练手. [二. ...
- python 爬取直播弹幕视频_python爬取斗鱼B总直播弹幕
原博文 2018-07-10 18:00 − 在某群中看到关于弹幕爬取的需求,又因为斗鱼比较OP,就以这个作为切入点. 如果你想了解如何获取弹幕,我的这个例子就可以让你豁然开朗,对于哪些没有开发弹幕的 ...
- python爬app视频_python爬取抖音APP视频教程
本文讲述爬取抖音APP视频数据(本文未完,后面还有很多地方优化总结) 公众号回复:抖音 即可获取源码 1.APP抓包教程,需要用到fiddler fiddler配置和使用查看>>王者荣耀盒 ...
最新文章
- 高性能的JavaScript--加载和执行
- Python 用smtplib库发邮件报错:[WinError 10061] 由于目标计算机积极拒绝,无法连接。解决办法
- 二维稳态热传导 代码实现_博世壁挂炉发生故障代码及处理办法
- c语言拟合线性直线误差最小,急~~~~~~!!!求解!用C语言编写最小二乘法求数据的拟合曲线~并做出图显示拟合效果!高分悬赏!...
- Adroid真机调试
- python中的requests模块的使用大全
- maven项目 ant_将大型项目从Ant迁移到Maven
- 【语言处理与Python】10.1自然语言理解\10.2命题逻辑
- 高精度乘法(信息学奥赛一本通-T1307)
- JSP实现点击链接后下载文件(相当于右键另存)功能
- Linux 系统恢复误删除 Linux文件
- CTF—攻防练习之HTTP—命令执行漏洞
- bzoj千题计划164:bzoj5123: 线段树的匹配
- ps怎么去掉框框不伤字体_PS如何去掉和替换图片中的文字? 照着学就行了
- matlab模糊控制侧方位泊车
- 把Ethernet(以太网)基本工作原理说清楚
- std::stack使用总结
- 从零实现一个简单卷积神经网络
- 大风吹乱了我的头发,就像吹一朵蒲公英
- 弹性云服务器(Elastic Cloud Server,ECS)
热门文章
- RISC-V 架构及MRS 开发环境介绍
- 进一步学习操作系统 - 哈工大李治军老师 - 学习笔记 L26L27
- 《奥日与精灵意志》是如何完成近乎不可能的Switch移植任务的?
- VCM驱动IC--close loop
- linux下RTP编程(使用JRTPLIB)
- 前沿重器[1] | 微软小冰-多轮和情感机器人的先行者
- 迅为RK3568开发板Ubuntu系统编写运行Qt工程
- angular isActive
- tomcat服务器接口响应超时,Tomcat请求超时
- Linux仿真不checkquota命令,quotacheck命令不能创建aquota.user和aquota.group文件解决方法...