这是Google Drive v3 API示例中的代码。
def main(): msgstr“”“显示Google Drive API的基本用法。”“ credentials = get_credentials() http = credentials.authorize(httplib2.Http()) service = discovery.build('drive','v3',http = http)
results = service.files().list(q="mimeType='image/jpeg'",
pageSize=2,fields="nextPageToken, files(id, mimeType, name, description)").execute()
items = results.get('files', [])
if not items:
print('No files found.')
else:
print('Files:')
for item in items:
print('{0} {1} {2} {3}'.format(item['id'], item['mimeType'], item['name'], item['description']))
我在v3文档中添加了看起来像有效属性的说明。我收到了这个错误。
print('{0} {1} {2} {3}'.format(item['id'], item['mimeType'], item['name'], item['description']))
KeyError:'description'
我正在使用Python 3.0。原始示例中的代码可以在这里找到 - https://developers.google.com/drive/v3/web/quickstart/python#step_3_set_up_the_sample
可在此处找到文件参考的文档 - https://developers.google.com/drive/v3/reference/files
答案 0 :(得分:1)
虽然描述有效,但并非所有文件都有描述,如果他们不知道不会返回描述属性。尝试:
for item in items:
description = item.get('description', '')
print('{0} {1} {2} {3}'.format(item['id'], item['mimeType'], item['name'], description))
如果设置了描述或“&#39”,则会将描述设置为API返回的属性。 (空白)如果没有为该项目设置属性。