当前位置: 首页 > 知识库问答 >
问题:

使用pydrive将文件上载到GoogleDrive时更改文件名

范翰飞
2023-03-14

我想添加时间字符串的文件名,我上传到谷歌驱动器使用pydrive的结束。基本上,我尝试编写以下代码,但我不知道如何适应新的文件变量:

import time
from pydrive.auth import GoogleAuth
from pydrive.drive import GoogleDrive
from time import sleep

gauth = GoogleAuth()           
drive = GoogleDrive(gauth)

timestring = time.strftime("%Y%m%d-%H%M")

upload_file_list = ['Secrets.kdbx']
for upload_file in upload_file_list:
    gfile = drive.CreateFile({'parents': [{'id': 'folder_id'}]})
    # Read file and set it as the content of this instance.
    upload_file = drive.CreateFile({'title': 'Secrets.kdbx' + timestring, 'mimeType':'application/x-kdbx'}) # here I try to set new filename
    gfile.SetContentFile(upload_file) 
    gfile.Upload() # Upload the file.

获取类型错误:应为str、字节或os。类路径对象,而不是GoogleDriveFile

共有1个答案

姬安志
2023-03-14

事实上我发现了错误。我在CreateFile()中更改了文件的名称,并使用字符串切片来保留文件扩展名。当然,这种解决方案不能应用于其他不同名称的文件。

upload_file_list = ['Secrets.kdbx']
for upload_file in upload_file_list:
    gfile = drive.CreateFile({'title': [upload_file[:7] + timestring + "." + upload_file[-4:]], # file name is changed here
    'parents': [{'id': '1Ln6ptJ4bTlYoGdxczIgmD-7xcRlJa_7m'}]})
    # Read file and set it as the content of this instance.
    gfile.SetContentFile(upload_file)
    gfile.Upload() # Upload the file. # Output something like: Secrets20211212-1627.kdbx #that's what I wanted :)
 类似资料:
  • 我正试图上传一个文件到我的谷歌硬盘,下面的代码工作。如何指定要上载到哪个文件夹,即驱动器--shared with me--csvFolder

  • 我正在开发一个android应用程序,我试图将谷歌驱动器集成到我的应用程序中。该程序是允许同步,所以它在SD卡上创建一个文件,然后这个文件被上传到谷歌驱动器上。我成功地进行了身份验证,但是当我使用函数上传时,我得到一个NullPointerException,并且我看不到值在哪里是null,因为当我遍历所有内容时,似乎没有任何内容是null。 下面是我用来执行上传的代码。 以下是我如何获得驱动器服

  • 我希望有人能帮忙。我正在使用PyDrive进行身份验证,并将一个文件上传到我的Google Drive,没有任何问题。然后,我尝试通过更新其元数据来更改同一文件的权限以允许共享。 但是,当我打印userPermission时,它似乎没有按照我的预期设置权限。 我得到: 我不知道为什么权限设置正确。我没有任何错误。我在userPermission中设置变量的方式有什么问题吗?谢谢你的帮助。

  • > 假设我有一个导出链接,如下所示:

  • 我目前试图下载一个文件从谷歌驱动器使用PyDrive,但我只能下载文件到相同的位置作为我的Python程序。有没有办法指定文件的下载位置?这是我目前下载文件的方式。

  • 我试图下载一个文件或文件夹从我的谷歌驱动器使用PyDrive 多次尝试使用文档后:https://gsuitedevs.github.io/PyDrive/docs/build/html/filemanagement.html#download-文件内容 我似乎仍然无法专心下载文件夹。 我已经设法列出我的项目的标题和ID,我只需要一种方式下载它们。 在列出带有ID和标题的文件夹和文件后,是否有任何