python – 为什么Google API V3不会让孩子们回归?

我想使用
Python获取Google云端硬盘中给定文件夹中所有文件/文件夹的列表.我正在使用的电话是这样的:

query = parentID + " in parents"

response = service.files().list(q=query,
                                spaces='drive',
                                fields='files(id, name, parents)').execute()

根据search for files文档和migrating to v3文档,我应该正确地做到这一点.但是当我运行代码时,我收到以下错误:

<HttpError 400 when requesting https://www.googleapis.com/drive/v3/files?q=[MY_PARENT_ID]+in+parents&spaces=drive&alt=json&fields=files%28id%2C+name%2C+parents%29 returned "Invalid Value">

我的查询有什么问题,如何正确调用?

最佳答案 尝试了大约15个小时后,找到了这个解决方案:

只需更改查询变量,如下所示
假设父ID是’0B_hg54vjh34v5jh23gv5i2v35th2gv35v235kjvk’

query="'0B_hg54vjh34v5jh23gv5i2v35th2gv35v235kjvk' in parents"

现在,它应该工作.

它应该工作,即使你交换单引号和双引号…你在父母中使用结果查询=“0B_hg54vjh34v5jh23gv5i2v35th2gv35v235kjvk”,而我们需要的是在父母中查询=“’0B_hg54vjh34v5jh23gv5i2v35th2gv35v235kjvk’

另一种方法是:

parentId='0B_hg54vjh34v5jh23gv5i2v35th2gv35v235kjvk'
query="'" + "' in parents"

为什么会发生这种情况: –
如果你正确看待输出错误,
它有一个http链接,如下所示:
父母和空格中的https://www.googleapis.com/drive/v3/files?q=0B_hg54vjh34v5jh23gv5i2v35th2gv35v235kjvk = drive& alt = json& fields = files(id,name,parents)

但是所需的一个在Id周围有单引号,看起来像这样:

父母和空格中的https://www.googleapis.com/drive/v3/files?q=’0B_hg54vjh34v5jh23gv5i2v35th2gv35v235kjvk’= drive = amp; alt = json& fields = files(id,name,parents)

点赞