如何通过视频ID从博主视频中获取link?

How to get the link from blogger video by the video ID?

我发现一些网站使用自己的域来使用博主的嵌入视频,例如:https://example.com/blogger/video-play.mp4?contentId=264f2ge544g86h49

PS: https://example.com 不是 blogger 上托管的域,它在 blogger 外部

264f2ge544g86h49是上传到blogger的视频ID。

它是怎么做出来的?有教程吗我在 https://developers.google.com/blogger/docs/3.0/using

上没有找到任何相关信息

总结我们在上面的评论中达成的解决方案。这将需要使用您选择的语言编写服务器端逻辑,以使用视频 ID 或视频令牌提取实际视频 link。

更复杂的方法是直接使用视频 ID (https://example.com/blogger/video-play.mp4?contentId=VideoID)。您需要使用通过查询参数获得的 VideoID(从https://example.com/blogger/video-play.mp4?contentId=VideoID)。博客post会有以下内容-

<object id="BLOG_video-<b>VideoID</b>" class="BLOG_video_class" contentid="<b>VideoID</b>"></object>

现在通过

访问 public Blogger 提要中可用的特定 post
https://www.blogger.com/feeds/BLOGID/posts/default/POSTID?alt=json

从上面 JSON 供稿中的 content.$t属性,可以提取特定视频的 Video Token .

使用 Video Token,向 -

发送 GET 请求
https://www.blogger.com/video.g?token=<b>VideoToken</b>

可以通过解析响应来提取实际视频 URL。响应将在 HTML 中,实际 URL 存在于具有键 play_url -

的 JavaScript 对象中
var VIDEO_CONFIG = {
    "thumbnail": "Thumbnail-URL",
    "iframe_id": "BLOGGER-video-VideoID-6712",
    "allow_resize":错误,
    "streams": [{
        "play_url": "<b>实际视频-URL</b>",
        "format_id": 18
    }, {
        "play_url": "<b>实际视频-URL-更高分辨率</b>",
        "format_id": 22
    }]
};

一种更简单的方法是直接从视频令牌开始,因为这样可以完全消除与 Blogger API 和 Feed 交互的需要。


以前,仅使用视频 ID(使用类似 https://www.blogger.com/video-play.mp4?contentId=VIDEOID 的格式)就可以获得实际视频 link。这意味着将视频上传到 Blogger 后,不需要发布 post。但从 2018 年 11 月左右开始,Blogger 转向基于令牌的视频 URL(如 https://www.blogger.com/video.g?token=TOKEN)。只有在包含视频的 post 发布后才能知道该令牌。此更改可能是由于 Blogger 大约在同一时间推出的视频管理选项引起的