Google驱动器Python上传文件不起作用

达纳巴兰兰加萨米

我正在使用下面的代码,正在生成fileID,但未上传文件。我尝试调试,但它显示的输出与代码输出相同。我已将服务帐户json文件和test.csv放置在放置python代码的文件夹中。

from google.oauth2 import service_account
from googleapiclient.discovery import build
from googleapiclient.http import MediaFileUpload




def uploadGdrive():
    SCOPES = ['https://www.googleapis.com/auth/drive.file']
    SERVICE_ACCOUNT_FILE = './iron-tea-266706-8a1f9ee69710.json'
    folder_id = '15xc7s-dFnpW6pjtjtUH4kT1BnZ46ffFh'
    #file_id = '1IcbtXGW1ZMmv64SqqXJZCsFrwMlE3NiQcDZR98XuFX8'
    file_location='./test.csv'

    creds = service_account.Credentials.from_service_account_file(SERVICE_ACCOUNT_FILE, scopes=SCOPES)
    service = build('drive', 'v3', credentials=creds)
    file_metadata = {
        'name': 'Master Summary',
        'mimeType': 'application/vnd.google-apps.spreadsheet'
    }

    media = MediaFileUpload(
        '{}'.format(file_location),
        mimetype='text/csv',
        resumable=True)

    #This is to update existing file
    #file = service.files().update(body=file_metadata,media_body=media,fileId='{}'.format(file_id)).execute()
    #print(file.get('id'))

    #this is to create new  file
    file = service.files().create(body=file_metadata,
                                   media_body=media,
                                   fields='id').execute()
    print('File ID: %s' % file.get('id'))

if __name__ == '__main__':
    uploadGdrive()
戴姆敦

服务帐户不是您。服务帐户是虚拟用户,它具有自己的驱动器帐户。它上载的文件归它所有。

您的文件可能已上传到服务帐户驱动器帐户。或者“ 15xc7s-dFnpW6pjtjtUH4kT1BnZ46ffFh”假设服务帐户有权访问该目录。您可以通过执行file.list并查看其当前有权访问的文件来查看此信息。

如果创建文件成功,它将返回file.id作为响应的一部分,您也可以检查该文件。

您可以在自己的Google云端硬盘帐户上创建目录,并与服务帐户共享该目录。然后让服务帐户将文件上传到该目录,然后您便可以在自己的帐户中看到它们。上传文件后,您还需要向自己授予权限。查看Permissions.create。

或者,您可以让服务帐户将文件上传到其自己的帐户,然后为您添加权限到文件,以便您能够看到它。查看Permissions.create。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用gdrive将文件上传到google驱动器在crontab上不起作用

从网络驱动器在本地驱动器中写入smb文件不起作用

在 Python 中使用 aiohttp 上传 Google 驱动器文件

如何使用使用Python的驱动器API将文件上传到Google驱动器?

R Shiny从本地驱动器上传pdf不起作用

IIS 上映射驱动器的 NetworkCredential 不起作用

驱动器服务API的某些参数不起作用

D:驱动器光盘驱动器不起作用

使用带有PyDrive的Python在Google驱动器上成功上传了文件,但文件已损坏

Cloudinary Python上传器不起作用

从Java将本地文件上传到Google驱动器

如何使用python在共享的Google驱动器中上传子文件夹?

显示隐藏的文件,文件夹和驱动器不起作用-注册表项似乎坏了?

如何使用python上传到Google驱动器

软盘驱动器在Windows中不起作用,但在Windows之外起作用

文件上传在实时服务器上不起作用

FTP服务器上的文件上传不起作用

如何使用gapi和可恢复的上传将文件上传到Google驱动器?

每5秒钟使用python将文本文件上传到Google驱动器

使用UUID在fstab中安装驱动器不起作用

带有谷歌驱动器的 Android 快速启动应用程序不起作用

映射驱动器的Powershell脚本,持久连接不起作用

启动时为空,驱动器托架不起作用

Windows 10 Pro-先前版本在映射的网络驱动器上不起作用

从命令行解锁加密的外部驱动器不起作用

驱动器搜索在 Office 365 组中不起作用

wodim --devices不起作用时获取CD / DVD驱动器的功能

希捷Firecuda NVMe驱动器上的smartctl不起作用

在不同驱动器上的Raspberry PI Mounting /和/ backupdrive不起作用