文章有不当之处,欢迎指正,如果喜欢微信阅读,你也可以关注我的微信公众号:好好学java
,获取优质学习资源。
写此文章旨在学习和讨论,请勿滥用…
一、概述
目前互联网视频网站,从我解析的地球上十几个大型的视频网站来看,90%的网站视频加密效果不好。可能视频下载地址后门接口的保护对某些网站也没什么意义。这次主要写一下下面几个网站的后门接口地址解析方法,包括Youtube、优酷、土豆、爱奇艺、pps、酷六、腾讯视频、新浪、搜狐、第一视频、CNTV、乐视、gametrailer。。。。。 我会陆续更新这边文章。
获取后门地址的方法大概有五种,1 分析IE缓存文件 2 通过第三方工具解析 3反编译页面播放器 4 抓包 5 Google
下面将分析的方法不能解析VIP视频,不能解析收费视频,不能解析需要密码才能观看的视频。
对于大视频网站一般不会一步得到地址,往往需要分析各个文件和算法。
如果你是普通玩家想下载视频网站喜欢的视频,推荐你直接用硕鼠或者网站自带的客户端,下面的内容也不需要再看了
废话不多说了,切入正题。。。
二、 Youtube地址解析
YT的解析如果你想测试的话,需要翻墙。。。。
Youtube实在是太给力了,解析方法比较简单,而且视频高清、无广告、无水印。。。,地球未来就靠它了。。。
后门接口
http://www.youtube.com/get_video_info?video_id=$vid
$vid 可以在播放地址中直接得到http://www.youtube.com/watch?v=dQ3Mt9yiz6k
Vid就是dQ3Mt9yiz6k 加入到上面链接就可以得到后门文件
http://www.youtube.com/get_video_info?video_id=dQ3Mt9yiz6k
得到的这个文件是需要解析的,YT的视频分为
FLV, 320 x 240,400 x 240, 480 x 360, 640 x 360, 854x 480
3GP, 176 x 144, 176 x 144, 320 x 240, 640 x 360,
MP4 1280 x 720, 1920 x 1080 4096 x 3072,854 x 240,640 x 360, 1920 x 520,1280 x 720,
WebM 640 x 360, 854 x 480, 1280 x 720, 640 x 360, 854 x 480, 1920 x 540, 1280x 720,
这四种格式,每个格式的还有多个分辨率,可以说目前国内视频网站没有一个可以做到这个程度,达到这种清晰度的。
在后门地址下载的文件中可以得到下面的连接
这就是下载地址,另外文件中还包含了许多视频的其他信息,如title duration 等等
YT的下载必须翻墙。。。
三、 优酷后门地址解析
之前我写过一篇优酷真实地址解析的方法,
http://blog.csdn.net/feige2008/article/details/8198434
四 、土豆后门地址解析
自从优酷和土豆合并后,土豆的地位也下降了,原本土豆在UGC模式上是很有潜力的。。现在的视频网站都在争先恐后的做版权视频。。百度也收服了PPS,这块视频市场是越来越火爆了。。。。都是有钱的主儿啊。。。
土豆后门可以通过IE缓存分析出来,但是可能不能适用所有视频,而且不能拿到最高清版本,这可能与合并前土豆播放地址太乱有关系吧,现在的土豆好多了,地址也整齐了,格式也规范了,只不过有许多视频都直接用的优酷的后门下载地址,当然这个视频通过优酷的域名也是可以播放的。
从页面上找iid: 得到后加入下面链接即可
http://v2.tudou.com/v?it=’ + iid+ &st=1,2,3,4,5,10,99
如http://v2.tudou.com/v?it=163364330&st=1,2,3,4,5,10,99
数字越大,版本清晰度越高。。。
五、 爱奇艺地址解析
最初解析爱奇艺跟打游击一样。。。 它有一种方法必须多刷新几次才能拿到下载地址,而且还不一定是高清的,后来果断放弃了。。随后在Google的一个code上找到了一种方法,
后门地址
http://cache.video.qiyi.com/v/ +videoed
在视频播放页上找到video_id”:加入上面的连接
如http://cache.video.qiyi.com/v/ba41c5ba91114b58abfa58e9e2131ebe
其中有一个file字段 ,这并不是下载地址,但如果你把这个地址后缀改为mp4,会出现一个下载地址,多刷几次就可以下载视频了。
如http://data.video.qiyi.com/videos/amusement/20121122/0c413e2f1233029f3173a8cc5d23a8fc.mp4
这个就是我一开始说的方法,可以用,但是不可取。。。
实际算法是需要算出来key的
爱奇艺比较变态,需要进行两步解析
第二步解析需要用到这个链接http://data.video.qiyi.com/t.hml?tn=1
tn=1 可以改为任何数字 ,得到了{“t”:”1367910982”,”i”:”220.181.109.33”}
我们需要用到这个t值, 其实t是根据时间变化的,你可以刷新一下,会发现每秒变化一次。
第二个后门接口的地址是组合得到的
上面的file值字段+?vn=…
V的值是根据t,通过算法得到的
V= (t ^ -1775748160) +Math.pow(2, 32);
第二个后门组合成功,例如
当你点击上面链接时,可能已经失效了。。。。具体的失效时间我也没有测试
从这个页面上可以得到最后的下载地址
六、 PPS
在pps正式进入新爹之前,我来掰一掰目前pps的视频后门接口
http://ipd.pps.tv/play_35Q7LQ.html
取出页面播放地址,得到play_ 后面的vid 即 35Q7LQ 加入后门地址
http://dp.ppstream.com/get_play_url_cdn.php?sid=35Q7LQ&flash_type=1
在这个地址上可以看到
http://vurl.ppstv.com/ugc/7/8a/7ff8fbe2e7b4ae5091a00952f4eabbb76e815c24/7ff8fbe2e7b4ae5091a00952f4eabbb76e815c24.pfv 后缀为.pfv 改为.mp4 即可下载视频了
这个方法可以下载所有视频,包括电影电视剧
七、 酷六
视频播放地址http://v.ku6.com/show/wDRxSSruvEc6_oTH.html
取wDRxSSruvEc6_oTH 加入后门地址
http://v.ku6.com/fetchVideo4Player/wDRxSSruvEc6_oTH…html
后门接口组成格式为
http://v.ku6.com/fetchVideo4Player/+ vid + …html
后门地址页面是json格式,有个f 的字段即视频地址,采用的是unicode编码
八、 腾讯视频
通过下面的方法,你可以在不带任何广告的观看腾讯所有视频
http://v.qq.com/cover/o/obr3rfx7xdatznl.html?vid=b0113x7xx0m
视频播放页地址 取vid b0113x7xx0m
加入后门接口
http://vv.video.qq.com/geturl?vid=b0113x7xx0m&otype=xml&platform=1&ran=0%2E9652906153351068
页面上可以看到视频下载地址
腾讯视频是不切片的,再长的视频也是单文件
九、 新浪视频
在视频播放地址页面中找到vid
http://video.sina.com.cn/m/jhrh_61941187.html vid:’
http://ent.sina.com.cn/f/nmxz/video/#92210121 #92210121
http://video.sina.com.cn/p/news/w/v/2012-12-11/011661941375.html vid :”
http://ent.sina.com.cn/bn/entreport/#v_92178162 #v_92178162
因为播放页有多种,可能找到vid的方式不一样,vid是个8位数字
对于有多个清晰度版本的vid 会有多个如 第一个链接的vid
vid:’92145658|92145656’,
如果想直接找高清版本也可以直接看hd_vid:’92145656’,这个字段信息
加入后门接口
http://v.iask.com/v_play.php?vid=88870103
这是个xml页面,如果是多切片的话可以找到多个片段的下载地址。
十、 搜狐视频
同样在视频播放地址页面找到vid
因为有多种播放页面,所以vid未必好找
加入下面的后门地址
http://my.tv.sohu.com/videinfo.jhtml?m=viewtv&vid=
如果上面这个不行
http://hot.vrs.sohu.com/vrs_flash.action?vid=
例如http://my.tv.sohu.com/videinfo.jhtml?m=viewtv&vid=52986508
打开上面url之后是个json格式,但还无法找到下载地址
http://allot/?prot=prot&file=clipsURL[i]&new=su[i]
在json中找到上面的字段 allot、 prot、 clipsURL、su
因为视频有多个切片所以写成了 [i] 这种形式
例如
打开后是酱紫
http://101.226.200.16/sohu/6/|324|114.80.133.7|ywAYHUJiiFObDbpaJEIE9iCgYQ5iVim1PKiuhA..|1|0
我们需要用的是上面标红的字段
下载地址的组合为
http://101.226.200.16/sohu/6/+su[i]+?key= ywAYHUJiiFObDbpaJEIE9iCgYQ5iVim1PKiuhA..
主要上面的下载地址还用到了之前json页面上的 su[i] 另外添加上了?key= 这几个字符
最后组合成下载地址,如:
总体来说,搜狐的下载地址伪装的还是很不错的,不像酷六和腾讯,他妹子的大路中间的东西。。。
十一、第一视频
蛋碎的网站。。。
天天改,天天更新。。。。
首先在视频播放页面找到videoXmlUrl 如果不存在的话再根据视频url来找vid 他的vid是6个数字
如http://news.v1.cn/world/2013-6-4/605305v-1.shtml
他的vid就是 605305
这个链接可以直接在页面上找到vieoXmlUrl 得到
http://pic.v1.cn/cloudone/xml/video/201306/04/605305.xml
是个xml页面,可以看到
十二、 乐视
乐视,呵呵。。。 长视频的王者,咱们上面有人。。。你懂得,版权视频很多,很多电视电影大家肯定都想保存,Ok,各位亲,今天我就来解决您的难题。。。
在视频播放页面找到 videoid:
加入后门地址 http://app.letv.com/v.php?id=
是个json格式, 找到url字段
如http://app.letv.com/v.php?id=1850313
页面上可能有问题,但是大家可以看这个页面的源文件
找到url字段
找到 里面的url 字段 如
http:\/\/220.181.117.5\/ng?s=3&df=28\/13\/81\/letv-uts\/1401559-AVC-254398-AAC-31556-33238-1224714-c34403c036ad1c9b219b9d6b0720928e-1355792739716.flv&br=295
连接里包含了转义字符\ 去掉后
再打开新的连接可以看到是个json
找到location 即为视频文件的下载地址。如:
“location”:”http:\/\/114.80.187.215\/28\/13\/81\/letv-uts\/1401559-AVC-254398-AAC-31556-33238-1224714-c34403c036ad1c9b219b9d6b0720928e-1355792739716.letv?crypt=b0f35e8aa7f2e102&b=295&gn=812&nc=1&bf=28&p2p=1&video_type=flv&check=0&tm=1370403000&key=795d113ff7269aaf71ce2c6a76777c59&opck=1&lgn=letv&proxy=3702711575&cips=114.80.133.7&geo=CN-9-126-1&tsnp=1&s=3&df=28\/13\/81\/letv-uts\/1401559-AVC-254398-AAC-31556-33238-1224714-c34403c036ad1c9b219b9d6b0720928e-1355792739716.flv&br=295”,
十三、 gametrailer
一个国外的游戏网站,具有很多丰富的高清版本游戏视频
这个网站不需要翻墙,其实页面上提供了下载功能,但是如果要写程序自动下载的话,就需要解析一下他的下载地址了
网址
在视频播放页找到
data-video data-token
加入后门接口
http://www.gametrailers.com/feeds/video_download/“+data_video+”/”+data_token
例
页面上有url地址 即视频下载地址
综述:
原本还有其他几个小网站解析了一下,但是因为小也没啥技术含量就不介绍了,本文旨在互相学习讨论,大家有什么疑问或者觉得我哪里写的不对不好,随时欢迎留言。。。。
通过解析大型视频网站的下载地址能够干什么: 呵呵。。。 你可以让流量走向自己,当别人分享其他网站的视频的时候,你把视频下载到自己的服务器上,最后流量就走向了自己;可以在自己的网站上播放其他网站的视频,当然这当中会涉及到版权问题,所以提醒大家要注意,传闻1集电视剧 100万,哈哈。。 其他内容可以参考www.youkud.com
整个例子,可以参考这里。