如何获得' fileId'对于Google云端硬盘文件?

时间:2014-08-31 08:36:44

标签: python google-drive-api

我有一个网络应用程序,允许用户创建和编辑Google Drive文件。我能够创建和保存新文件。但是,当我想更新现有文件时,我无法做到这一点。根据Google Drive API引用更新现有文件,用户需要提供' fileId'该文件。但是如何获取特定文件的fileId?我有文件标题,但怎么能得到' fileId'?

我正在使用以下代码来执行此操作:

fileId = <How to get this?>
media_body = MediaFileUpload(filename, mimetype='text/x-script.phyton', resumable=True)
body = {
    'title': filename,
    'description': 'File saved from Pythonista app',
    'mimeType': 'text/x-script.phyton'
}
existing_file = service.files().get().execute()
if existing_file:
    resource = service.files().update(
        fileId=fileId,
        body=existing_file,
        newRevision=True,
        media_body=media_body).execute()

1 个答案:

答案 0 :(得分:1)

在获取文件时,您始终需要保留该ID。与Dropbox不同,GD的路径和文件名几乎不提供任何内容。

请参阅此资源:

当您获得与此Link: Google Drive SDK API for files listing

类似的查询的用户项列表时

“files”容器内部希望找到这样的数据:

{
  "kind": "drive#file",
  "id": string,  <<<<< HERE
  "etag": etag,
    ****
  "title": string, <<<<<<< Name of the file you already use
    ****
  }
}

Link: Google Drive SDK API for file resource info

因此,在您的代码中,您应该在大多数时间传递ID,文件名在这里并不重要。