google-api - 尝试使用 Python 的库在 GAPI Drive v3 中按文件 ID 查询时出错
问题描述
我正在使用 service.files().list() 并提供一个查询字符串来检索与给定列表中的 id 匹配的文件。然而,调用 service.files.list 出错,GAPI 返回错误代码 400。我正在使用使用访问令牌创建的服务对象。
我收到以下消息:
raise HttpError(resp, content, uri=self.uri)
googleapiclient.errors.HttpError: <HttpError 400 when requesting https://www.googleapis.com/drive/v3/files?pageSize=50&fields=%2A&q=id+contains+%271234%27&spaces=drive&alt=json returned "Invalid Value". Details: "Invalid Value">
这是代码。是否可以通过列表 API 中的文件 ID 进行查询?我更喜欢这样做,而不是为每个单独的文件发出获取请求。
# Create file query string
queryStr = ""
for i in range(len(fileIds)):
queryStr += f"id='{fileIds[i]}'"
if i != len(fileIds) - 1:
queryStr += " or "
# Build files array
results = service.files().list(
pageSize=50,
fields="*",
q=queryStr,
spaces="drive"
).execute()
print(results.get("files", [0])[0])
解决方案
推荐阅读
- xml - 当只读小部件字段没有值时如何删除错误值,对于 Odoo11?
- jasper-reports - Jasper Reports:将来自不同数据适配器的两个数据集连接在一起的最佳方法是什么?
- javascript - arr.push(arr.splice(n,1)) “吞噬”移动对象的属性
- sql - 使用 SQL 查询获取 ID 的 R 向量错误
- android - 数据库查询在 SQLite 房间中不起作用
- c# - 如何删除我的 DataGridView 列中的时间
- c# - Jquery Select2,从结果控制器设置参数函数以获取 ID 或点击 Jquery Select2
- regex - 使用正则表达式python在标点符号后小写字母
- python-3.x - 如何通过python中的用户输入找出阶乘数?
- node.js - Hyperledger Fabric installChaincode 错误在安装链码请求中缺少对等对象