在Youtube API的2.0版本(已停产)中,API文档指定了如何制定复合/短语搜索的逻辑,API v3.0的等效信息是什么?
我需要做些什么才能将我的关键字转换为适用于API v3.0的工作?
以下是v2.0的文字:
q参数指定搜索查询字词。 YouTube将搜索所有内容 与该术语匹配的视频的视频元数据。视频元数据包括 标题,关键词,描述,作者和#39;用户名和类别。 请注意参数中的任何空格,引号或其他标点符号 值必须是URL转义。
要搜索确切的短语,请将其括起来 引号中的短语。例如,要搜索匹配的视频 短语"间谍平面",将q参数设置为%22spy + plane%22。您的 请求也可以使用布尔NOT( - )和OR(|)运算符 排除视频或查找与其中一个相关联的视频 几个搜索词。例如,要搜索匹配的视频 要么"划船"或"航行",将q参数设置为 划船|帆船。 (请注意,管道符必须进行URL转义。) 同样,要搜索匹配"划船"或"航行" 但不是"钓鱼",将q参数设置为划船+钓鱼。
答案 0 :(得分:0)
你可以测试这个api过滤器是否相同:这里有youtube和wikipedia的例子。正如您可以在浏览器调试器上显示的那样,所有参数都通过管道“|”发送到参数“q” ...
window.searchModule = {
cors: "http://crossorigin.me/",
wikiEndpoint: "https://en.wikipedia.org/w/api.php",
ytEndpoint: "https://www.googleapis.com/youtube/v3/search",
ytKey: "AIzaSyDsPK3Cs1A4ipMjNr147ubG5HpoDyW6zzk",
init: function(sentSearch) {
var self = this,
bandCheck = $("#bandCheckbox").is(":checked");
if(bandCheck == true) {
sentSearch = sentSearch + "+(band)";
}
self.wikiSearch(sentSearch);
self.ytSearch(sentSearch);
self.watchers();
},
wikiSearch: function(sentSearch) {
var self = this;
$.ajax({
url: self.cors + self.wikiEndpoint + "?action=query&list=search&srsearch=" + sentSearch + "&srlimit=1&format=json",
success: function(response) {
//console.log(response.query);
self.formatWiki(response.query);
},
error: function(response) {
console.log(response);
}
})
} .....
答案 1 :(得分:0)
您尝试过了吗
q: '\b(billy the cat)\b',