公司有服务器上有自己专利的视频,让我测试能不能下载。。目前迅雷或者chrome的fvd插件都无法下载下来视频。公司有同事用手机uc浏览器下载下来了视频。
首先说说他的技术,上次技术分享没有听得很仔细,具体好像是,在视频地址后加入一段 't=xxxxx'的值,然后有播放器的网址页面返回的是304,同时,页面上好像还有一个iframe 用来重新加载视频。如果直接想访问视频地址,则返回403.
F12 看到视频地址格式为:服务器地址/jplayer/xxx.mp4?t=xxxxxxx 同时返回206。
另外服务器上还设置了no-cache
cookie好像是视频路径+本地ip地址的md5加密值。此外好像还设置过range,不知道是不是因为切片,视频文件会有好几个。据说浏览器和硬盘都没有缓存,而是直接加载到内存。。。
上星期五想用python伪造浏览器去访问下载视频。但是不太写的来。。 使用python2 urllib模块的话似乎没有办法把headers传入,而urlretrieve这个方法直接下载视频地址的话,下下来的其实是一个html 403文件,因为没有headers。 urllib2虽然可以伪造headers,但是没有urlretrieve方法。自己试了很多headers,有些200,304,403。。
想请教一下 有没有什么好的方法 能伪造浏览器,同时,又有下载的方法。
Use requests
Put in an address and try it~