网页flv下载探索_1
最近看了一个优酷视频(非优酷网站,最终地址指向优酷),用chrome开发者工具,可找到flv地址如下,简单摘录如下:
http://27.221.100.104/657D4D2878C3382C78116A3BA7/0300011D10570ECAA905BE2D9B7D2F338C9CFD-A474-20BA-9114-E91A51D93FA9.flv.ts?ts_start=200&ts_end=204&ts_seg_no=345&ts_keyframe=0
http://27.221.35.80/69810A0728A23382C6B5ABA374C/0300011D11570ECAA905BE2D9B7D2F338C9CFD-A474-20BA-9114-E91A51D93FA9.flv.ts?ts_start=30&ts_end=40&ts_seg_no=349&ts_keyframe=0
http://27.221.35.80/69810A0728A23382C6B5ABA374C/0300011D11570ECAA905BE2D9B7D2F338C9CFD-A474-20BA-9114-E91A51D93FA9.flv.ts?ts_start=40&ts_end=50&ts_seg_no=350&ts_keyframe=0
http://27.221.35.80/69810A0728A23382C6B5ABA374C/0300011D11570ECAA905BE2D9B7D2F338C9CFD-A474-20BA-9114-E91A51D93FA9.flv.ts?ts_start=50&ts_end=60&ts_seg_no=351&ts_keyframe=0
http://27.221.100.83/65811F4F673C4C842B413F84911/0300011D17570ECAA905BE2D9B7D2F338C9CFD-A474-20BA-9114-E91A51D93FA9.flv.ts?ts_start=70&ts_end=80&ts_seg_no=471&ts_keyframe=0
http://27.221.100.83/65811F4F673C4C842B413F84911/0300011D17570ECAA905BE2D9B7D2F338C9CFD-A474-20BA-9114-E91A51D93FA9.flv.ts?ts_start=70&ts_end=80&ts_seg_no=471&ts_keyframe=0
http://182.118.58.54/698169CC4CB53C81CB279BF392A/0300011D1A570ECAA905BE2D9B7D2F338C9CFD-A474-20BA-9114-E91A51D93FA9.flv.ts?ts_start=90&ts_end=100&ts_seg_no=533&ts_keyframe=0
可得出如下结果:
1. 每一地址下有单独一段flv,直接在网页中输入网址(截止flv.ts),可直接下载整个flv视屏。后边的ts_start/ts_end/ts_seg_no只是http申请一个数据帧。
http://182.118.58.54/698169CC4CB53C81CB279BF392A/0300011D1A570ECAA905BE2D9B7D2F338C9CFD-A474-20BA-9114-E91A51D93FA9.flv.ts
2. flv的名字有‘Dxx’决定,适配到另一IP不能找到文件。
3. 每段flv完成后,都会有一申请网页crossdomain.xml。
网页视频就是一个一个flv组成的,可通过网页直接下载单个flv,然后用软件组合成一个完整视频,以加快速度。
现在难点:
1. 怎样获取详细flv地址,以加以下载。
2. 查看到flv地址通过chrome开发工具,怎样通过数据包查看到数据内容呢?
注:网络上都提到“硕鼠”,但其仅支持大的视频网站,怎样能达到全部视频呢?
后思:怎样获取网页视频地址呢?
1. 直接从网页中提取网页视频地址,直接用浏览器文本查看可获取视频地址。
2. 若视频由多个下载地址组成,则只能下载一次视频,记录下所有地址,放到数据库中。当要获取地址时,直接从数据库中获取;若有变动,直接在云端下载视频测试,然后给出地址,此方法应该不常用,因为给出的地址即使无效也没有关系。
迅雷之所以下载快,是因为获取了视频的多个地址,然后保存到迅雷数据库中,当要下载时,开多个进程从多个地址下载,这个速度更快。之所以有些地址不能用,原因一地址无效(服务器地址主动改变,或迅雷服务器地址未更新)或地址主机已停机(下载当时)。我想这也是所有下载工具通用的方法:数据库记录可下载地址,匹配文件名或视频文件头找到地址,多进程从不同地址下载视频,然后合成视频。
网页flv下载探索_1的更多相关文章
- PHP利用Curl实现多线程抓取网页和下载文件
PHP 利用 Curl 可以完成各种传送文件操作,比如模拟浏览器发送GET,POST请求等等,然而因为php语言本身不支持多线程,所以开发爬虫程序效率并不高,一般采集 数据可以利用 PHPquery ...
- html2canvas 网页截图 下载 上传
利用html2canvas插件 对网页截图 并下载和上传图片. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//E ...
- C# 网络编程之网页简单下载实现
这是根据<C#网络编程实例教程>中学到的知识实现的一个C#网页简单下载器,其中涉及到的知识主要是HTTP协议编程中相关类:HttpWebRequest类.HttpWebResponse类. ...
- Linux中7个用来浏览网页和下载文件的命令
上一篇文章中,我们提到了rTorrent.wget.cURL.w3m.Elinks等几个有用的工具,很多人回信说还有其它几个类似的工具也值得讨论,所以就有了这篇文章.如果错过了第一部分的讨论,可以通过 ...
- 网页站点下载器teleport ultra
软件名称:teleport ultra 介绍:teleport ultra是一款专门的网页站点下载器,使用这款工具可以方便地下载网页数据,包括网站的文字.图片.flash动画等,可以轻松下载所有的网站 ...
- Python 爬虫学习 网页图片下载
使用正则表达式匹配 # coding:utf-8 import re import urllib def get_content(url): """ Evilxr, &q ...
- 配置ActiveX控件在网页中下载安装
先检查客户端浏览器是否安装了ActiveX控件,如果没有安装ActiveX,就需要先给浏览器提示下载并允许安装.否则就直接使用该ActiveX控件.我们可以使用CodeBase来满足我们的要求:下面是 ...
- 使用Python3爬虫抓取网页来下载小说
很多时候想看小说但是在网页上找不到资源,即使找到了资源也没有提供下载,小说当然是下载下来用手机看才爽快啦! 于是程序员的思维出来了,不能下载我就直接用爬虫把各个章节爬下来,存入一个txt文件中,这样, ...
- 抓取分析网页批量下载评书(3)之批量下载mp3
本系列目录: <1.搜索有声小说> <2.分析详细页地址> <3.批量下载mp3> 本篇是大结局,看过前两篇的放心吧,不会有 ...
随机推荐
- OpenSSL使用方法
生成CA (勾选Generate Self Signed Certificate)openssl req -nodes -x509 -sha256 -newkey rsa:4096 -keyout & ...
- 使用LTT升级HP磁带机的固件程序
下载后将软件包解压 解压后,进入该文件夹可以看到固件程序 将所有固件程序拷贝至LTT软件安装目录下的firmware文件夹中 C:\Program Files\HP StorageWorks ...
- node.js 资料
supervison可以调试nodejs,并能自动布署 键入命令: npm -g install supervisor
- TVP5150摄像头
工作中看同事摄像头配置的时候有2种格式PAL.NTSC.如果摄像头的格式配置不对的话会出现重影.黑白没颜色.闪屏等等. TVP5150 PAL.NTSC配置.http://bbs.csdn.net/ ...
- 超级有用的9个PHP代码片段
在开发网站.app或博客时,代码片段可以真正地为你节省时间.今天,我们就来分享一下我收集的一些超级有用的PHP代码片段.一起来看一看吧! 1.创建数据URI 数据URI在嵌入图像到HTML / CSS ...
- Smart Tip
构建了一个smar-tip的tooltip组件 主要特性 自动定位与边界查找 支持8个方向与圆角 自定义皮肤 调用(Usage) var $container = $("#container ...
- javaWeb中struts开发——Bean标签
1.struts标签库中常用标签 使用myeclise标签可以自动注入,其中,前三个是经常使用的,主要的是logic标签 2.Bean标签 Bean标签主要用来定义和访问JavaBean,在Strut ...
- LENGTH() CHAR_LENGTH()
http://dev.mysql.com/doc/refman/5.7/en/string-functions.html#function_length LENGTH(str) Returns the ...
- 2016/4/21 关于jquery复习
jQuert AJAX [1]jQuery load()方法 :是AJAX方法, 从服务器加载数据,并把数据放入被选元素中 语法: $(selector).load(URL,data,callback ...
- 面向对象之struct
struct PointStruct { int pointx = 1; int pointy = 2; public PointStruct(int x, int y) { this.pointx ...