我正在使用 Youtube API,我希望有一个搜索自动完成功能,就像在YouTube 上一样,当您在搜索输入框中输入时,它会为您提供搜索建议。我已经阅读了文档,但仍然缺少,这可以使用 API 吗?
问问题
17968 次
5 回答
59
好的,我找到了这个网址:
http://suggestqueries.google.com/complete/search?client=firefox&ds=yt&q=Query
它不是 Youtube API 的一部分,但仍然有效,返回 JSON 响应。
于 2012-07-02T16:24:12.993 回答
7
对于 json,只需添加“client”参数:
http://suggestqueries.google.com/complete/search?client=youtube&ds=yt&client=firefox&q=Query
于 2015-11-24T21:57:25.560 回答
3
最重要的是 api 是旧的,给谷歌搜索建议而不是youtube 搜索建议
用这个:
https://clients1.google.com/complete/search?client=youtube&gs_ri=youtube&ds=yt&q=faded
使用以下 JS 代码提取建议:
// data is response of above api
const data = 'window.google.ac.h(["faded",[["faded",0,[433]],["faded alan walker lyrics",0,[433]],["faded remix",0,[433]],["faded 8d",0,[433]],["faded piano",0,[433]],["faded wheel free fire",0],["faded karaoke",0,[433]],["faded ringtone",0,[433]],["faded instrumental",0,[433]],["faded live",0,[433]],["faded piano tutorial",0,[433]],["faded whatsapp status",0,[433]],["faded dhol cover",0,[433]],["faded dance",0,[433]]],{"k":1,"q":"_sPyvXmmbfcsVtfP4sgjOdKQAvg"}])';
const searchSuggestions = [];
data.split('[').forEach((ele, index) => {
if (!ele.split('"')[1] || index === 1) return;
return searchSuggestions.push(ele.split('"')[1]);
});
console.log(searchSuggestions);
于 2020-06-26T10:38:26.827 回答
0
查看 YouTube 自动完成关键字抓取工具。不太确定提出问题的人想要 YouTube 自动完成解决方案的上下文,但我想我会把它扔在那里。
于 2017-03-28T09:29:08.497 回答
0
您也可以使用 JSON:
url: "https://suggestqueries.google.com/complete/search?client=youtube&ds=yt&q=" + i,
dataType: "jsonp",
于 2021-11-24T06:38:26.497 回答