繁体   English   中英

Python:从谷歌驱动器中查找并下载丢失的文件(使用共享链接)

[英]Python: find and download missing files from google drive (using a sharable link)

给定一个指向 google drive 文件夹(文件夹 ID)的可共享链接,我想将此文件夹下的 dir 列表与给定路径下的 dir 列表进行比较,并下载丢失的文件。

我读过有关PyDrive的信息,但找不到一种无需身份验证即可访问驱动器文件夹的优雅方式。

例如:

files_under_gdrive = ["File1", "File2", "File3"]
files_under_given_path = ["File1", "some_other_file"]

# Download missing files found only in Google Drive
...

files_under_given_path = ["File1", "some_other_file", "File2", "File3"]

任何提示/想法将不胜感激。 谢谢:)

例如,您可以轻松地从本地目录中收集文件并将它们的名称存储在列表中。

之后,为了从 Google Drive 共享驱动器中检索文件,您可以使用Files.list请求:

GET https://www.googleapis.com/drive/v3/files

includeItemsFromAllDrives设置为true ,并将driveId字段设置为共享驱动器的相应 ID。 根据您的确切需求和要求,您也可以在请求中添加其他字段。

从共享的 Google Drive 中检索文件后,您可以简单地比较两个列表并根据结果下载所需的文件。 要下载文件,您可能需要查看Drive API 文档中的此代码段:

file_id = 'ID_OF_THE_FILE_TO_DOWNLOAD'
request = drive_service.files().get_media(fileId=file_id)
fh = io.BytesIO()
downloader = MediaIoBaseDownload(fh, request)
done = False
while done is False:
    status, done = downloader.next_chunk()
    print "Download %d%%." % int(status.progress() * 100)

但是,我建议您从此处开始使用 Python 完成 Google Drive 快速入门。

参考

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM