【问题标题】:How do I use Youtube Data API V3 to fetch channel uploads using chanel's username?如何使用 Youtube Data API V3 使用 chanel 的用户名获取频道上传?
【发布时间】:2013-02-02 06:24:08
【问题描述】:

我已经使用上一个问题How do I get a list of uploaded videos for a certain channel with the new YouTube Data API (V3)? 探讨了这个主题的大部分内容,但我想要一些基于给出的答案的细节。

是否可以使用频道的用户名而不调用搜索查询来获取频道 ID?我有一个 https 请求,可以得到如下所示的搜索列表,但是当我知道确切的频道用户名时,我宁愿不浪费 API 配额。

https://www.googleapis.com/youtube/v3/search?q={channel_username}&key={my_api_key}&part=snippet

我的破解方法是从频道中获取一个 videoid 并从那里提取一个上传者 ID,但它并不优雅,如果上传被删除,它将无法工作。

另外,一旦我努力获取上传密钥,我怎样才能获得一个显示所有上传的 json,而不仅仅是 25 个列表?如果我必须递归调用上传页面,我该怎么做?

谢谢。

【问题讨论】:

    标签: youtube-api


    【解决方案1】:

    我认为要获取频道,使用频道的用户名,唯一的选择就是使用搜索,而尽量减少使用配额的最佳策略是使用缓存,或者保存频道ID。

    对于上传的视频的完整列表,作为 JSON,您可以使用 contentDetails.relatedPlaylists.uploads(包含频道上传视频的播放列表的 ID)并检索 PlaylistItems,使用每页 50 个项目的页面,并使用检索结果集中每个页面的 nextPageToken 值。

    【讨论】:

      【解决方案2】:

      我找到了答案。正确的方法是使用搜索查询站点,但直接说明要响应的列表类型,实际上只搜索频道。这是由

      完成的
      https://www.googleapis.com/youtube/v3/search?q={search_term}&key={API_key}&type=channel&part=snippet
      

      如您所见,类型是频道。通过使用确切频道用户名的搜索词进行搜索,您将得到一个返回列表,其中第一个 item 对象作为频道,您可以从那里存储频道 ID 和上传 ID。

      【讨论】:

        【解决方案3】:

        要更新此答案,您需要了解“配额限制”。
        因此,使用“search?q=[search]”将导致使用 100 个配额。
        最好使用“channels?part=id&forUsername={username]”,因为只有 1 个配额。

        然后你可以使用“channels?part=id,sn-p ....... &id={channel_ID]”来获取你所有的数据

        【讨论】:

          猜你喜欢
          • 2016-03-17
          • 2013-04-17
          • 2015-02-14
          • 2021-01-15
          • 2017-07-25
          • 2023-03-13
          • 1970-01-01
          • 2013-12-16
          相关资源
          最近更新 更多