Youtube获取视频文件链接

时间:2016-02-07 16:22:38

标签: file video hyperlink download youtube

我正在尝试提取已保存的YouTube视频文件的位置(例如youtube下载器)。

当我使用chromes开发人员工具时,我可以在网络部分轻松看到对该文件的GET请求。例如:

Request URL:ttps://r7---sn-35cxacf-43ce.googlevideo.com/videoplayback?sver=3&expire=1454883491&upn=tsTA82e-o9E&itag=251&id=o-APaDOeTiHGebIWBx11PdJn2W306GFYIoYkYRzOOCnq8o&mn=sn-35cxacf-43ce&mm=31&keepalive=yes&pl=32&ip=2a02%3A8071%3A2782%3A8c00%3Ad8e%3Aeb17%3Ab477%3Ad45b&ms=au&mv=m&mt=1454861758&ipbits=0&initcwndbps=1905000&clen=5116592&sparams=clen%2Cdur%2Cgir%2Cid%2Cinitcwndbps%2Cip%2Cipbits%2Citag%2Ckeepalive%2Clmt%2Cmime%2Cmm%2Cmn%2Cms%2Cmv%2Cpl%2Crequiressl%2Csource%2Cupn%2Cexpire&key=yt6&gir=yes&fexp=3300130%2C3300161%2C3310848%2C3312381%2C3312708%2C9406984%2C9416126%2C9420452%2C9422596%2C9423661%2C9423662&mime=audio%2Fwebm&requiressl=yes&lmt=1449558944068050&dur=308.401&source=youtube&cpn=TrlaqPAJmEUJLKte&alr=yes&ratebypass=yes&signature=704658DBE8F05AC56D741F2061B2F16B0B5F37DD.6929579BD72F61B1401C96078192EC20BA8CE6EC&c=WEB&cver=html5&range=781669-1125882&rn=9&rbuf=43086
Request Method:GET
Status Code:200 OK
Remote Address:[*****address*****]:443

如果我删除了一些最后的参数(从c = WEB开始),我得到了位置(see here) *。但是我怎样才能得到这个"请求URL"通过代码?我是否需要分析网络流量?或者还有其他方式吗?

*它只获得视频文件的声音 - 但没关系。声音在4秒后开始。

我试过的第二种方式: 获取普通youtubevideo的html-cocde(在youtube.com上)并提取和解码.googlevideo网址。但这种方式并不是很安全,因为我必须设置一个url,其中包含一些参数和值,这些参数和值对于每个视频都是必需的。所以这种方式只适用于每一秒视频...

有人知道另一种获取文件位置的方法吗?

1 个答案:

答案 0 :(得分:0)

这些网址可通过ytplayer.config.args对象获得。如果他们有"安全"请记住视频你必须跳过一些严肃的箍才能得到一个可用的URL,甚至可能不是。

might be useful