在Youtube GData Youtube类中搜索多个关键字



Youtube API文档说,根据下面的链接,可以在视频获取过程中搜索多个关键字。

https://developers.google.com/youtube/2.0/reference#Searching_for_videos

下面的链接给出了一些相同的示例。为 "q" 参数提供的示例说我们可以在搜索中使用 NOT (-( 和 OR (|( 运算符:

https://developers.google.com/youtube/2.0/reference#qsp

示例:q=划船%7Csailing搜索划船或帆船。

我能够理解这些要点。我的问题是我在Zend Framework 2中使用ZendGData库来搜索视频。我不确定如何为搜索提供多个关键字。

$yt = new ZendGDataYouTube();
$query = $yt->newVideoQuery();

下面提供了我尝试的所有组合。它们都不起作用。

$query->setQuery("french,tamil");
$query->setQuery("french|tamil");
$query->setQuery("french%7Ctamil");
$query->setQuery("french or tamil");

注意:文档说要使用 url 编码,以便对管道符号进行编码。这就是为什么我在搜索中选择了 %7C。

ZendGData 类生成的 URL 是:https://gdata.youtube.com/feeds/api/videos?q=french|tamil&start-index=58&max-results=50&safeSearch=none&orderby=viewCount&format=5&v=2

这不会获取带有关键字"泰米尔语"的视频。所有视频仅来自第一个关键字。

请指出我正确的方向。

或者这个有一个简单的空格。测试了它,它找到了所有关键字 https://gdata.youtube.com/feeds/api/videos?q=french%20tamil&start-index=1&max-results=50&safeSearch=none&orderby=viewCount&format=5&v=2

所以试试这个 $query->setQuery("法语泰米尔语"(; 或$query->setQuery(urlencode(("法语泰米尔语"((;

此外,您的起始索引看起来很奇怪,不应该是起始索引= 1

相关内容

  • 没有找到相关文章

最新更新