首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用ytdl.getInfo获取视频缩略图?

如何使用ytdl.getInfo获取视频缩略图?
EN

Stack Overflow用户
提问于 2019-05-26 13:32:15
回答 2查看 3.3K关注 0票数 1

我正在使用ytdl-core和discord.js创建一个不和谐的机器人,并添加一个音乐命令。有没有办法使用ytdl.getInfo来获取所提供网址的缩略图?

编辑:

代码语言:javascript
复制
let validate = await ytdl.validateURL(args[0])
    if(!validate) return message.channel.send("This URL doesn't seem to be valid. Please put a valid YouTube URL after the command.")
    let vidInfo = await ytdl.getInfo(args[0])
EN

回答 2

Stack Overflow用户

发布于 2021-07-28 03:52:18

如果您仔细查看这些链接,您会发现这两个链接都是像https://i.ytimg.com/vi/video_id/default.jpg一样创建的,因此,如果您有视频的ID,则可以轻松地将其定义为变量并将其放入链接中,就像这样

代码语言:javascript
复制
let videoID = //however you want to get the ID
https://i.ytimg.com/vi/${videoID}/default.jpg
票数 2
EN

Stack Overflow用户

发布于 2019-05-27 14:20:25

是的,你可以

只需运行ytdl.getInfo(),您就可以发现该对象的第一个属性之一是thumbnail_url。所以它将会是

代码语言:javascript
复制
const ytdl = require('ytdl-core');

ytdl.getInfo('https://www.youtube.com/watch?v=YQHsXMglC9A', function(err, info) {
  console.log(info.thumbnail_url) // "Adele - Hello" thumbail
});

然而,默认的缩略图非常小。所以我继续看视频,发现(通过检查元素)用于背景的图片与默认的图片相同,但名称中有'hqdefault‘而不是' default’。

示例:

阿黛尔你好缩略图:https://i.ytimg.com/vi/YQHsXMglC9A/default.jpg

Adele Hello hq缩略图:https://i.ytimg.com/vi/YQHsXMglC9A/hqdefault.jpg

我不知道它是否适用于所有的视频。我认为你可以这样做,尝试hq缩略图,如果找不到,使用默认缩略图。

编辑: Adele Hello maxres缩略图:https://i.ytimg.com/vi/YQHsXMglC9A/maxresdefault.jpg

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56310914

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档