【问题标题】:How to rename a google spreadsheet via Google Drive API in python?如何通过 python 中的 Google Drive API 重命名谷歌电子表格?
【发布时间】:2020-10-14 06:09:42
【问题描述】:
我在 Python 中使用Google Drive API 来归档我的文件。
但是,我在重命名原始文件的副本时遇到问题。
我的新文件的标题默认为
'副本+原始文件名'
但是我希望我的新文件名是
'原始文件名 + 当前日期'
我找不到如何更改复制代码中的标题配置或重命名我复制的新文件。
我使用的复制码是:
service.files().copy(fileId=original_file_id).execute()
有人知道如何在 Python 中重命名文件标题吗?或者也欢迎任何替代方法。
【问题讨论】:
标签:
python
google-drive-api
google-sheets-api
google-api-python-client
gspread
【解决方案1】:
我不确定您希望日期和复制的文件名的格式如何,但您可以执行以下操作:
代码sn-p:
from datetime import date
def copyFile(service, fileId):
fileName = service.files().get(fileId=fileId).execute()["name"]
copyId = service.files().copy(fileId=fileId).execute()["id"]
currentDate = date.today()
copyName = "{} | {}".format(fileName, currentDate)
body = { "name": copyName }
service.files().update(fileId=copyId, body=body).execute()
【解决方案2】:
请注意,我不是 python 开发人员,此代码是我的疯狂猜测,您需要修复它。
Files.copy 有一个名为 name 的参数,您可以将其与请求一起发送。我不确定如何使用 python libray 发送可选参数。我看到的唯一问题是您需要先执行一个 file.get 以便您拥有可用于传递给此方法的文件的当前名称。
request = service.files().copy(fileId=original_file_id);
request.Name = 'original file name + current date';
response = request.execute();