晚上不玩电脑的话...

我发现如果晚上不玩电脑的话,可以做很多事情。

比如今天晚上,我就没有玩电脑(在写这篇博客之前),然后我:

  • 写了一篇演讲稿,并且背了好几遍
  • 玩了一个小时的 3ds 游戏
  • 吃了很多零食和水果
  • 绕着学校散了很久的步,顺便把演讲稿又背了一遍
  • 去别的寝室玩

总之做了很多事情,比晚上玩电脑上网有意义多了。

所以我以后要减少玩电脑的时间,做更多有意义的事情。


对了,明天我要参与评选国家奖学金,祝我成功吧。

sohu视频解析

首先随便找个视频,比如这个:

http://tv.sohu.com/20130331/n371216235.shtml

 

查看页面源代码,搜索var vid="

找到var
vid="1037347";即为
videoid

 

构造urlhttp://hot.vrs.sohu.com/vrs_flash.action?vid=1037347

获取到一个json

allot项值为220.181.61.229,获取key时会用到(似乎会变动,以你看到的为准,下同)

clipsURL项为各个分段的url,显然不能直接下载

su项为一组字符串,目测和各个视频分段是一一对应的

 

以获取第一分段视频为例,找到clipsURL为:

http://data.vod.itc.cn/tv/20130331/783313-1037347-e73d8457-f174-43c5-8c69-5e34a641c907.mp4

su为:

/175/208/CPOjUPsgPyLl4qGtMDGXv4.mp4

 

构造url

http://220.181.61.229/?prot=2&t=0.123123&file=tv/20130331/783313-1037347-e73d8457-f174-43c5-8c69-5e34a641c907.mp4&new=/175/208/CPOjUPsgPyLl4qGtMDGXv4.mp4

解释下各个参数:prot=2固定,t为随意的一个小数,file为之前的clipsURL去掉域名后的路径,new即为之前获取的su

 

可获取到用“|”分隔的一组字符串

取第一项和第四项:

baseUrl=http://117.21.183.7/sohu/3/

key=qOl9qfQPwues1O1RzWjs-i8dzjKnmrylbHPXJw..

key可能会过期失效,解析与下载应同时进行

 

构造url:

http://117.21.183.7/sohu/3/175/208/CPOjUPsgPyLl4qGtMDGXv4.mp4?key=qOl9qfQPwues1O1RzWjs-i8dzjKnmrylbHPXJw..

(即baseUrl+su+"?key="+key,注意把重复的“/”去掉)

 

即为视频真实地址。

qiyi视频解析



写得比较简单,将就看吧~~

 

1、先随便找一个视频:

http://yule.iqiyi.com/20130418/2f0c042f64460b82.html

 

2、查看页面源代码,在头部很容易能找到一个json:

var
info={"url.........

找到"tvId":"479162","videoId":"fe7bd3a76a46423a8fc23001e9e92300"两项。

 

3、构造url:

http://cache.video.qiyi.com/vd/#TVID#/#VIDID#/

http://cache.video.qiyi.com/vd/479162/fe7bd3a76a46423a8fc23001e9e92300/

又获取到一个json,提供不同清晰度,不同分片对应的地址

 

4、构造url:

http://data.video.qiyi.com/videos/amusement/20130418/e720d2da63a0c7407f8a3dfa26b38bb5.f4v?retry=1

错误405 Not
Allowed,显然不需要key是不行的,下面来计算所需的key

 

5、key和服务器时间有关,获取http://data.video.qiyi.com/t?tn=0.32949503720738(后面的tn参数似乎是随机的),得到一个json,其中的t域即为服务器时间。

 

6、key  = t
xor 0x96283BC0 ,注意要按照无符号整数转换成字符串。

 

7、构造url:

http://data.video.qiyi.com/#KEY#/videos/amusement/20130418/e720d2da63a0c7407f8a3dfa26b38bb5.f4v

得到一个json,里面包含视频的真实地址,打开后即可下载,解析完成,撒花~