通过PyDrive删除文件

2 投票
2 回答
2552 浏览
提问于 2025-04-18 11:12

我正在使用PyDrive(http://pythonhosted.org/PyDrive/)来简化访问Google Drive的API,但在尝试删除Drive中已有的文件时遇到了问题。我在文档中没有找到明确的方法,快速浏览了一下源代码也没有头绪。有人能给我指个方向吗?谢谢!

2 个回答

0

Scott Blevins写了这个代码,但他的代码从来没有被合并进主项目里。看起来pydrive这个项目有点被遗弃了。真可惜,因为它其实挺有用的。

你只需要从这里下载压缩文件,然后把旧的pydrive代码替换成新下载的内容就可以了:https://github.com/smeggingsmegger/PyDrive/tree/Trash_and_Delete

3

更新:这个功能已经合并了。你现在可以使用 fi.Delete()fi.Trash() 来删除文件。更多细节请查看 文档


在 PyDrive 文件夹的 files.py 中新增了5行代码,用于删除功能。

你可以从以下链接下载更新后的 files.py:

https://github.com/ytakefuji/PyDrive/blob/master/files.py

你需要编译才能生成 files.pyc 文件。

$ cat help.py
import py_compile
py_compile.compile("files.py")
$ python help.py

示例:通过 oauth2 删除 Google Drive 上的文件:

https://github.com/ytakefuji/PyDrive/blob/master/oauth2_delete.py

编辑:相关的代码行是(添加到 GoogleDriveFile 类中):

def DeleteFile(self,file_id):
try:
    self.auth.service.files().delete(fileId=file_id).execute()
except errors.HttpError, error:
    print 'An error occurred: %s' % error 

这个功能的文档可以在 这里 找到。

撰写回答