是否有办法使用YouTube API检索100多个结果?
我可以检索多达100个结果使用这个查询字符串:https://gdata.youtube.com/feeds/api/videos?q=football& orderby = relevance&起始索引= 1,效果= 10,v = 2
但是当我尝试https://gdata.youtube.com/feeds/api/videos?q=football& orderby = relevance&起始索引= 101,效果= 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."'>tag:youtube.com,2008:videos2013-04-26T01:51:51.667Zhttp://schemas.google.com/g/2005#kind' term='http://gdata.youtube.com/schemas/2007#video'/>视频匹配:footballhttp://www.youtube.com/img/pic_youtubelogo_123x63.gifhttps://www.youtube.com'/>http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='https://gdata.youtube.com/feeds/api/videos?v=2'/>http://schemas.google.com/g/2005#batch' type='application/atom+xml'href='https://gdata.youtube.com/feeds/api/videos/batch?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=atom-service&v=2'/>https://gdata.youtube.com/feeds/api/videos?q=football&start-index=91&max-results=10&orderby=relevance&v=2'/>YouTubehttp://www.youtube.com/http://gdata.youtube.com'>YouTube数据API10010110
据我所知,你可以使用YouTube搜索API获得999个结果。为什么这里限制在100个?有没有办法让我得到超过100个结果?
谢谢!
我不能说内部是否有什么改变,现在将totalResults限制在100,但这似乎是一个非常普遍的问题。但是,如果您尝试使用API的v3版本,这就不是问题了:例如,这个查询:
https://www.googleapis.com/youtube/v3/search?q=football&部分= id&关键= YOUR_DEVELOPER_KEY
会给你更多的结果。使用v3,您可以将maxResults参数设置为每个响应最多返回50个视频,然后通过将pageToken参数设置为给定响应的"nextPageToken"属性来对响应进行分页。
试试https://gdata.youtube.com/feeds/api/videos?q=football&orderby=relevance&v=2它将采用默认大小。当您使用起始索引和大小时,您正在使用分页机制。我想这就是问题所在。不幸的是,谷歌youtube API每次查询最多只支持50个视频。它在文档里。999个视频是一个视频源中可以包含的视频总数。而不是它会查询出的视频数量。不要误以为它会返回你所有的视频。为了浏览所有视频,你必须使用带有起始索引和大小的分页。
你可以使用这个url
https://www.googleapis.com/youtube/v3/search?q=football&part=id&key=YOUR_DEVELOPER_KEY&max-results=150
,你很容易得到超过100个结果
我对同样的问题感到困惑- start-index> 100的视频搜索查询不返回任何结果:
http://gdata.youtube.com/feeds/api/videos?v=2& q =滑板+ dog&效果= 50,起始索引= 101
和start-index <100只返回100以内的视频数:
http://gdata.youtube.com/feeds/api/videos?v=2& q =滑板+ dog&效果= 50,起始索引= 90
给你10个视频。
难道不能访问搜索返回的前100个结果之外的结果吗?
分页存在缓存/升级问题。
在这里核对答案。
浏览提要的正确方法是发出第一个请求对于没有start-index的提要,然后检查是否有一个
<link rel="next'...>
,如果有,使用那个URL检索提要的下一页。
我发现,如果你把每个分页调用API之间的一个小暂停,它返回400个结果,它的平均每页调用放置2秒之间的调用。这对我的。如果您想获得更多,您必须关闭与API的连接,并在一到两分钟后再试一次。