【问题标题】:Decoding youtube base.js cipher 2016解码 youtube base.js 密码 2016
【发布时间】:2016-10-03 13:10:06
【问题描述】:

我正在写一个 js+php 软件,让下载 youtube 视频变得更容易,但我遇到了以下问题:

我通过这种方式获取有关视频的信息:

parse_str(file_get_contents("http://youtube.com/get_video_info?video_id=".$id),$info);

现在一些视频返回:use_cipher_signature => True,我想绕过它。

我在网上搜索过,但我得到的只是 2014 年的一些帖子。 (这篇包含很好的主题介绍:Best approach to decode Youtube cipher signature using PHP or JS

我知道我必须查看https://www.youtube.com/watch?v=cipheredID 的源代码,提取 *base.js 脚本,然后在其中找到解密代码,但是 *base.js 对我来说太模糊了。

有没有人可以帮助我?

第二个问题: 算法 od 编码/解码签名是否取决于位置?因为我的是 pl_PL(https://s.ytimg.com/yts/jsbin/player-pl_PL-vfluAB5bv/base.js) 例如美国用户会有不同的链接 en_US

【问题讨论】:

    标签: javascript php youtube


    【解决方案1】:

    你知道如何从 youtube 链接中提取 base.js 文件吗?

    【讨论】:

    • 是的,我知道。我不知道如何从中提取解密功能
    • 可以分享一下方法吗?打开YouTube链接看源码就可以看到文件了,但是我相信有一个简单的方法可以直接获取文件。
    • php 中这样的东西:$ytPlayerCode=file_get_contents('http://www.youtube.com/watch?v='.$id); $dom = new DOMDocument; $dom->loadHTML($ytPlayerCode); foreach ($dom->getElementsByTagName('script') as $node) { if(strpos($node->getAttribute("src"), ".js") != false){ echo htmlspecialchars($node->nodeValue.': '.$node->getAttribute("src"))."<br>"; } }
    猜你喜欢
    • 2021-11-19
    • 1970-01-01
    • 2016-08-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多