youtube 搜索没有获取 URLS
Posted
技术标签:
【中文标题】youtube 搜索没有获取 URLS【英文标题】:youtube search not getting URLS 【发布时间】:2020-09-18 00:51:45 【问题描述】:我正在尝试创建一个在 youtube 上搜索视频 URL 的命令。当我自己运行该命令时,它会发送嵌入内容,告诉您缩小搜索范围。但是,当我运行命令 + 查询时,它会在控制台中记录大部分视频信息,但不会说明视频本身的 URL,也不会向服务器发送任何内容。它不记录错误,并且机器人保持在线。如何解决这个问题?
const opts =
maxResults: 25,
key: '(youtube api key)',
type: 'video'
;
const search = require('youtube-search')
bot.on('message', async message =>
if(message.author.bot) return;
if(message.content.toLowerCase() === 'a!play')
let embed = new Discord.MessageEmbed()
.setColor("#73ffdc")
.setDescription("Please enter a search query. Remember to narrow down your search.")
.setTitle("YouTube Search API");
let embedMsg = await message.channel.send(embed);
let filter = m => m.author.id === message.author.id;
let query = await message.channel.awaitMessages(filter, max: 1 );
let results = await search(query.first().content, opts).catch(err => console.log(err));
if(results)
let youtubeResults = results.results;
let i =0;
let titles = youtubeResults.map(result =>
i++;
return i + ") " + result.title;
);
console.log(titles);
message.channel.send(
embed:
title: 'Select which song you want by typing the number',
description: titles.join("\n")
).catch(err => console.log(err));
filter = m => (m.author.id === message.author.id) && m.content >= 1 && m.content <= youtubeResults.length;
let collected = await message.channel.awaitMessages(filter, maxMatches: 1 );
let selected = youtubeResults[collected.first().content - 1];
embed = new Discord.MessageEmbed()
.setTitle(`$selected.title`)
.setURL(`$selected.link`)
.setDescription(`$selected.description`)
.setThumbnail(`$selected.thumbnails.default.url`);
message.channel.send(embed);
);
【问题讨论】:
【参考方案1】:既然你说大多数信息都被记录下来了。也许一切都是正确的,只是因为你给了 api 的 url,它不需要把它作为信息返回。尝试使用 eval 命令或为随机视频创建自己的命令日志记录信息,例如
https://www.youtube.com/watch?v=nNCdYSzRKpU
看看它是否没有给你链接。如果没有,那么它是完全正常的,并且 api 只是不返回它,如果它返回,你应该添加 api 标签或搜索 youtube-search 文档
【讨论】:
以上是关于youtube 搜索没有获取 URLS的主要内容,如果未能解决你的问题,请参考以下文章
如何通过点击webview中的YouTube搜索页面链接获取视频ID
如何从 Youtube Data API v3 获取最大搜索结果?