6

我第一次尝试为 YouTube 设置 Google apiclient,并按照我做的文档作为测试(没有找到 YouTube API 的具体示例):

import json
from apiclient.discovery import build
service = build('youtube', 'v3', developerKey = 'tralalala')
videos = service.videos()
request = videos.list(part = '7lCDEYXw3mM') # some video id
response = request.execute()
json.dumps(response, sort_keys = True, indent = 4)

我明白了

{
 "error": {
  "errors": [
   {
    "domain": "youtube.parameter",
    "reason": "missingRequiredParameter",
    "message": "No filter selected.",
    "locationType": "parameter",
    "location": ""
   }
  ],
  "code": 400,
  "message": "No filter selected."
 }
}

显然我错过了这个filter,但我似乎无法在文档google-api-client-libraries.appspot.com的任何地方找到它。我的意图是通过提供其id.

4

2 回答 2

5

您至少需要一个选择器才能列出。“id”就是其中之一。您可以随时查看YouTube API 示例项目以供参考。这是一个示例中的Python 列表用法

于 2013-05-24T18:21:02.010 回答
2

按照@pypat 的建议,我更改了list()方法的属性

videos = service.videos()
request = videos.list(part = 'id', id = '7lCDEYXw3mM')
response = request.execute()

两者兼而有之partid并且需要产生结果。

为了获取给定视频的完整列表或属性,属性part必须包含属性组列表

request = videos.list(part = 'id, snippet, contentDetails, statistics, status, topicDetails',
                      id = '7lCDEYXw3mM')
于 2013-05-24T13:32:50.073 回答