【问题标题】:Difference between YouTube API results and actual YouTube queries?YouTube API 结果和实际 YouTube 查询之间的区别?
【发布时间】:2012-11-07 23:11:20
【问题描述】:

我正在创建一个涉及解析来自 youtube api 的一些数据的 php 脚本。

这是我正在运行的查询:

http://gdata.youtube.com/feeds/api/videos?q=science&max-results=25&fields=entry[media:group/yt:duration/@seconds > 1200 and yt:statistics/@viewCount > 20]

无论出于何种原因,我只得到 3 个结果。你会期待更多的结果。此外,如果我手动访问 youtube 并搜索相同的条件(搜索词的“科学”并且至少 20 分钟长),您会得到充满结果的页面。

为什么我只得到 3 个?

这会重复多次查询; API 返回的数据集中只有一小部分,但在实际的 youtube 搜索页面上,有页面和常规查询的结果页面。

我之前的主题已关闭,但是在 Youtube API 开发者论坛上,它指出 stackoverflow 是我应该提出问题的地方——如果这里不合适,那么我应该去哪里寻求答案?

【问题讨论】:

  • 我建议你从实际的 YouTube 中获取。我曾经使用过这些 API,结果是错误/迟到的结果,我在代码中搜索了 3 个小时的错误,然后我意识到 API 得到了不真实的结果。

标签: php xml youtube youtube-api


【解决方案1】:

两件事:

  • 使用&v=2 来使用更加强大的 API 版本 2。
  • 版本 2 还引入了 Duration 参数,它比您在 Fields 参数中获得的 yt:duration 位更有效。

通过这样做可以使查询更加健壮(为了可读性而分解,因为我假设这个查询是在某种程度上以编程方式生成的)。

http://gdata.youtube.com/feeds/api/videos?
q=science
&max-results=25
&duration=long
&fields=entry[yt:statistics/@viewCount%20%3E%2020]
&v=2

【讨论】:

    【解决方案2】:

    另外,要回答您为什么只获得 3 个结果的问题,请在此处查看我的评论:syntax for multiple field/entry specifications in the youtube api?

    【讨论】:

      猜你喜欢
      • 2013-03-09
      • 2016-05-04
      • 1970-01-01
      • 2012-12-22
      • 1970-01-01
      • 1970-01-01
      • 2020-10-10
      • 1970-01-01
      • 2016-07-09
      相关资源
      最近更新 更多