如何在linux下观看需vodplayer播放的电影
其实这个也可以视为下载需要vodplayer或者叫做宝利通播放器才能观看的在线电影的一个解决方案。
宝丽通视频点播服务用在许多宽带服务上。速度较快,但是必须使用其特定的播放器vodplayer才能播放。而这个软件只有windows平台上的版本。在linux或者mac无法使用。除非装虚拟机。那太麻烦。
现在提供一个解决方案,其原理如下:
首先分析一下,为什么只能用vodplayer播放器才能播放呢?这肯定是服务器上对视频请求做了判定,一个http地址格式的多媒体地址,只要分析一下具体的数据包就能明白了。通过嗅探器可以得知,主要是数据包中的agent指出了请求者是vodplayer,应该是根据这个来判断服务器是否响应请求。如果不是改播放器发出的请求那拒绝响应。正是如此,我们被限制只有vodplayer播放器才能播放。那么我们只要能够伪装成该播放器在提出请求就可以了。
得益于我们强大的linux下的犀利下载器wget,我们可以轻松获取视频内容,也就是说可以下载到本地上之后再观看。wget可以通过参数把自己伪装成各种客户端。该参数就是 –U。
故而我们分三个步骤完成下载任务。
第一步,通过网络嗅探器分析出vodplayer的agent是“NovaSoft NetPlayer/3.8”,第二步,得到电影的http的地址。在这里需要一点技巧了,一般浏览器上都是通过iframe来调用嵌套有vodplayer的ActiveX代码来播放的。否则就无法播放,不过没关系,我们本来就没打算在线播放嘛。只要分析html页面的源代码可以找到电影的http地址。可以用firefox浏览器,安装一个firebug插件,那是相当方便就能得到地址。
第三步,在控制台输入指令调用wget就可以下载了。格式如下:
wget -U="NovaSoft NetPlayer/3.8" "视频的http地址"
就ok了。
当然了,在windows平台下也是可以实现的。因为wget也可以在windows平台下使用。其实也就是安装一个bash运行环境,这个就是同样很是犀利的cygwin了。
当然如果你能找到其他的能够指定agent的下载器那也一样可以,不一定非要使用wget。
这个呢在国内还是很有用的,毕竟很多服务都只能在windows下才有相应软件。一来可以避免局限在windows下,为喜欢linux 的朋友提供一个方便。二来网络速度不是很稳定,有时在线看非常卡,不方便。一部电影只要5分钟左右就下载下来了,在本机上看的很惬意。当然要注意的是,如果大家都用这种方式下载那很消耗带宽的。不要胡乱使用,切忌切记。