【发布时间】:2016-09-10 19:07:50
【问题描述】:
我正在使用 pydrive 1.2.1 在 python 3.5.2 中编写一个小脚本,我需要能够删除一个不在我的计算机本地存储的文件,而是在我的 Google Drive 帐户中。 docs 仅显示如何删除您之前创建的文件,而不是已存储在驱动器上的文件。使用pydrive实际上可以删除现有文件吗?如果是这样,如何?
【问题讨论】:
我正在使用 pydrive 1.2.1 在 python 3.5.2 中编写一个小脚本,我需要能够删除一个不在我的计算机本地存储的文件,而是在我的 Google Drive 帐户中。 docs 仅显示如何删除您之前创建的文件,而不是已存储在驱动器上的文件。使用pydrive实际上可以删除现有文件吗?如果是这样,如何?
【问题讨论】:
从文档看来,drive.CreateFile() 仅创建对文件的引用,这可以是本地的或远程的。
如您所见,here drive.CreateFile() 用于下载远程文件。
我相信这样的事情应该可以完成这项工作:
# Initialize GoogleDriveFile instance with file id.
file1 = drive.CreateFile({'id': <file-id>})
file1.Trash() # Move file to trash.
file1.UnTrash() # Move file out of trash.
file1.Delete() # Permanently delete the file.
【讨论】:
CreateFile() 创建了一个可以表示已经存在的文件的 GoogleDriveFile 实例(即不一定创建一个新文件)。您可以在这里查看源代码:github.com/googledrive/PyDrive/blob/…