需要帮助才能使用YouTube搜索API获得超过100个结果

时间:2013-04-26 01:53:58

标签: youtube youtube-api youtube.net-api

有什么方法可以使用YouTube API检索超过100个结果吗?

我可以使用此查询字符串检索最多100个结果: https://gdata.youtube.com/feeds/api/videos?q=football&orderby=relevance&start-index=1&max-results=10&v=2

但是当我尝试的时候 https://gdata.youtube.com/feeds/api/videos?q=football&orderby=relevance&start-index=101&max-results=10&v=2

我得到: http://www.w3.org/2005/Atom'xmlns:openSearch ='http://a9.com/-/spec/opensearch/1.1/'xmlns:gd ='http://schemas.google.com/g/2005'gd:etag ='W /“C0YFQHg9fyp7I2A9WhBVGUk。”'>标签:youtube.com,2008:videos2013-04-26T01:51:51.667Zhttp://schemas.google.com/g/2005#kind'term ='http://gdata.youtube.com/schemas/2007#video'/>视频匹配:football { {3}} https://www.youtube.com'/> http://schemas.google.com/g/2005#feed'type ='application / atom + xml'href ='http://www.youtube.com/img/pic_youtubelogo_123x63.gif '/>http://schemas.google.com/g/2005#batch'type ='application / atom + xml'href ='https://gdata.youtube.com/feeds/api/videos?v=2'/>https://gdata.youtube.com /feeds/api/videos?q=football&start-index=101&max-results=10&orderby=relevance&v=2'/>https://gdata.youtube.com/feeds/api/videos? ALT =原子服务&安培; v = 2' /> HTTPS:?//gdata.youtube.com/feeds/api/videos q =足球&安培;启动指数= 91&安培;最大结果= 10安培;的OrderBy =关联&安培; v = 2'/> YouTube https://gdata.youtube.com/feeds/api/videos/batch?v=2 http://gdata.youtube.com'> YouTube数据API10010110

据我了解,您可以使用YouTube搜索API获得999个结果。为什么这里限制为100?我有一个解决方法可以获得超过100个结果吗?

谢谢!

6 个答案:

答案 0 :(得分:6)

我无法谈论内部是否已发生变化,现在将总结果限制在100,但这似乎是一个非常普遍的问题。但是,如果您尝试使用API​​的v3,这不会成为问题:例如,此查询:

https://www.googleapis.com/youtube/v3/search?q=football&part=id&key=YOUR_DEVELOPER_KEY

将为您提供更多,更多的总结果。使用v3,您可以将maxResults参数设置为每个响应最多返回50个视频,然后通过将pageToken参数设置为" nextPageToken"来对参数进行分页。给定响应的属性是。

答案 1 :(得分:1)

试试这样https://gdata.youtube.com/feeds/api/videos?q=football&orderby=relevance&v=2 它将采用默认大小。当您使用起始索引和大小时,您正在使用分页机制。我想这就是问题所在。不幸的是,Google youtube API每个查询最多只支持50个视频。它在文档中。 999个视频是视频Feed中可以包含的总视频数。不是它会查询的视频数量。不要错误地接受它,因为它会返回所有的视频。你必须使用起始索引和大小的分页才能浏览所有视频。

答案 2 :(得分:1)

你可以使用这个网址

https://www.googleapis.com/youtube/v3/search?q=football&part=id&key=YOUR_DEVELOPER_KEY&max-results=150

您可以轻松获得超过100个结果

答案 3 :(得分:0)

我对此问题感到困惑 - 使用start-index>进行视频搜索查询100不会返回任何结果:

http://gdata.youtube.com/feeds/api/videos?v=2&q=skateboarding+dog&max-results=50&start-index=101

和带有start-index<的查询100只返回最多100个视频的数量:

http://gdata.youtube.com/feeds/api/videos?v=2&q=skateboarding+dog&max-results=50&start-index=90

为您提供10个视频。

您是否应该能够访问搜索返回的前100个以外的结果?

答案 4 :(得分:0)

分页的缓存/升级问题。

检查此答案here

  

浏览Feed的正确方法是发出第一个请求   对于没有start-index的feed,然后检查是否   有一个<link rel="next'...>,如果是,请使用该网址来检索   饲料的下一页。

答案 5 :(得分:0)

我发现如果你在API的每个分页调用之间放一个小暂停,它会返回400个结果,它意味着每次调用1次,每次调用之间放置2秒。它适用于我的。如果你想获得更多,你必须关闭与API的连接,并在一两分钟后再试一次。