如何通过内存将文件上传到Google Drive [python]

2024-05-06

我一直在论坛上搜索,但没有成功解决我的问题。

我正在尝试使用 Google Drive Python API 将内存中的文件上传到 Google Drive。但是,我见过的所有示例都使用磁盘上具有特定文件路径和名称的文件。

 service = build('drive', 'v3', credentials=creds)

    media = MediaFileUpload(
        'MyFile.jpeg',
        mimetype='image/jpeg',
        resumable=True
    )
    request = service.files().create(
        media_body=media,
        body={'name': 'MyFile', 'parents': ['<your folder Id>']}
    )
    response = None
    while response is None:
        status, response = request.next_chunk()
        if status:
            print("Uploaded %d%%." % int(status.progress() * 100))
    print("Upload Complete!")

但是,我想做这样的事情:

with open('MyFile.jpeg', 'rb') as FID: 
	fileInMemory = FID.read()
	
myGDriveUpload(fileInMemory)

#Pass jpeg file that has been read into memory
#to Google Drive for upload.

由于我正在执行的操作,该文件将位于内存中,无需保存到磁盘,使用其文件路径上传文件,然后删除临时保存在磁盘上的文件。

如何才能只上传内存中的文件,而无需将其保存到磁盘并使用文件路径和名称?

Thanks


  • 您想使用 googleapis 和 python 将内存中的数据上传到 Google Drive。
  • 你想使用fileInMemory以下脚本的。

    with open('MyFile.jpeg', 'rb') as FID: 
        fileInMemory = FID.read()
    
  • 您已经能够使用 Drive API 上传文件。

在这个答案中,我使用“Class MediaIoBaseUpload”而不是“Class MediaFileUpload”。

示例脚本:

service = build('drive', 'v3', credentials=creds)

with open('MyFile.jpeg', 'rb') as FID:
    fileInMemory = FID.read()

media = MediaIoBaseUpload(io.BytesIO(fileInMemory), mimetype='image/jpeg', resumable=True)
request = service.files().create(
    media_body=media,
    body={'name': 'MyFile', 'parents': ['<your folder Id>']}
)
response = None
while response is None:
    status, response = request.next_chunk()
    if status:
        print("Uploaded %d%%." % int(status.progress() * 100))
print("Upload Complete!")

参考:

  • 类 MediaIoBaseUpload https://googleapis.github.io/google-api-python-client/docs/epy/googleapiclient.http.MediaIoBaseUpload-class.html
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何通过内存将文件上传到Google Drive [python] 的相关文章

  • Python 转换矩阵

    我有一个如下所示的列表 2 1 3 1 2 3 1 2 2 2 我想要的是一个转换矩阵 它向我显示如下序列 1 后跟 1 的频率是多少 1 后面跟着 2 的频率是多少 1 后跟 3 的频率是多少 2 后跟 1 的频率是多少 2 后跟 2 的
  • 如何使用一个模型中间层的输出作为另一个模型的输入?

    我训练一个模型A并尝试使用中间层的输出name layer x 作为模型的附加输入B 我尝试像 Keras 文档一样使用中间层的输出https keras io getting started faq how can i obtain th
  • 如何在Windows中的Python 3.9下pip安装pickle?

    我需要pickle https docs python org 3 9 library pickle html module pickle包安装在我的下面Python 3 9在 Windows 10 下 我尝试过的 当尝试与pip inst
  • 无法在 virtualenv 中安装 libxml2

    我有一个问题libxml2蟒蛇模块 我正在尝试将其安装在python3 虚拟环境使用以下命令 pip install libxml2 python3 但它显示以下错误 Collecting libxml2 python3 Using cac
  • 使用pathlib获取主目录

    翻看新的pathlib在 Python 3 4 中 我注意到没有任何简单的方法来获取用户的主目录 我能想到的获取用户主目录的唯一方法是使用旧的os path像这样的库 import pathlib from os import path p
  • 为什么 re.findall 在查找字符串中的三元组项时不具体。 Python

    所以我有四行代码 seq ATGGAAGTTGGATGAAAGTGGAGGTAAAGAGAAGACGTTTGA OR 0 re findall r ATG 9 TAA TAG TGA seq 首先让我解释一下我正在尝试做什么 如果这令人困惑
  • 高级描述熊猫

    有没有像 pandas 那样更高级的功能 通常我会继续这样 r pd DataFrame np random randn 1000 columns A r describe 我会得到一份很好的总结 就像这样 A count 1000 000
  • 数据框中 .map(str) 和 .astype(str) 有什么区别

    我有一个数据框 其列名为 col1 和 col2 的整数类型条目 我想将 col1 和 col2 的条目以及其间的 点 连接起来 我搜索并发现添加两个列条目 df col df col1 map str df col2 map str 并添
  • 将 window.location 传递给 Flask url_for

    我正在使用 python 在我的页面上 当匿名用户转到登录页面时 我想将一个变量传递到后端 以便它指示用户来自哪里 发送 URL 因此 当用户单击此锚链接时 a href Sign in a 我想发送用户当前所在页面的当前 URL
  • Seaborn 中没有线性拟合的散点图

    我想知道是否有办法关闭seaborn中的线性拟合lmplot或者是否有一个等效函数可以生成散点图 当然 我也可以使用 matplotlib 但是 我发现 seaborn 中的语法和美学非常吸引人 例如 我想绘制以下情节 import sea
  • Django 2、python 3.4 无法解码 urlsafe_base64_decode(uidb64)

    我正在尝试通过电子邮件激活用户 电子邮件有效 编码有效 我使用了 django1 11 中的方法 该方法运行成功 在 Django 1 11 中 以下内容成功解码为 28 其中 uidb64 b Mjg force text urlsafe
  • 是否可以在Python中将日+月(不是年)与当前日+月进行比较?

    我正在获取 5 月 10 日 格式的数据 我试图弄清楚它是今年还是明年 该日期仅一年 因此 5 月 10 日表示 2015 年 5 月 10 日 而 5 月 20 日表示 2014 年 5 月 20 日 为此 我想将字符串转换为日期格式并进
  • 导入 pandas 显示 ImportError: 无法导入名称哈希表

    我已经在 python 3 3 上安装了 pandas 代码如下 import csv import pandas from pandas import DataFrame csvdata pandas read csv datafile
  • 无需访问 Internet 即可部署 Django 的简单方法?

    我拥有的是使用 Django 开发的 Intranet 站点的开发版本以及放置在 virtualenv 中的一些外部库 它运行良好 我可以在任何具有互联网连接的计算机上使用相同的参数 使用 pip 轻松设置 virtualenv 但是 不幸
  • 如何使用 enumerate 来倒数?

    letters a b c 假设这是我的清单 在哪里for i letter in enumerate letters 将会 0 a 1 b 2 c 我怎样才能让它向后枚举 如 2 a 1 b 0 c 这是一个很好的解决方案并且工作完美 i
  • 两种 ODE 求解器之间的差异

    我想知道 两者之间有什么区别ODEINT and solve ivp用于求解微分方程 它们之间有什么优点和缺点 f1 solve ivp f 0 1 y0 y0 is the initial point f2 odeint f y0 0 1
  • 使用 MPI 的 Allreduce 对 Python 对象求和

    我正在使用使用 Python 中的字典和计数器构建的稀疏张量数组操作 我想让并行使用这个数组操作成为可能 最重要的是 我最终在每个节点上都有计数器 我想使用 MPI Allreduce 或另一个不错的解决方案 将其添加在一起 例如 使用计数
  • 为boost python编译的.so找不到模块

    我正在尝试将 C 代码包装到 python 中 只需一个类即可导出两个函数 我编译为map so 当我尝试时import map得到像噪音一样的错误 Traceback most recent call last File
  • 基于值的 matplotlib 条形图颜色

    有没有一种方法可以根据条形图的值对条形图的条形进行着色 例如 values below 0 5 red values between 0 5 to 0 green values between 0 to 08 blue etc 我找到了一些
  • 在Python中停止ThreadPool中的进程

    我一直在尝试为控制某些硬件的库编写一个交互式包装器 用于 ipython 有些调用对 IO 的影响很大 因此并行执行任务是有意义的 使用 ThreadPool 几乎 效果很好 from multiprocessing pool import

随机推荐

  • 在实体框架中定义两个外键作为主键

    在实体框架中 我想使用两个外键作为另一种实体类型的主键 public class CustomerExtensionValue Values for extended attributes of a customer Key Column
  • 如何在 Imagick 中读取 SVG 字符串?

    我有一个包含 svg 元素标记的字符串
  • 了解用户是否更改了 DataGrid 中的数据的最佳方法是什么?

    我想知道每次用户修改 WPF DataGrid 中的数据时 我可以使用一个事件来做到这一点吗 或者我可以用来覆盖全套数据更改 添加行 删除行 修改行等 的最小事件集是什么 我知道这可能超出了你的要求 但是一旦你这样做了 就很难回头了 无论您
  • 根据 C3 图表中选择的区域显示过滤后的数据 - Angular

    我的代码是https codesandbox io s late forest cuwf7 https codesandbox io s late forest cuwf7 我有 2 个文件 app component html 和 app
  • 标准 C 的通用库?

    是否有任何广为人知的标准 C 通用库 我正在考虑类似于 C 的 Boost 之类的东西 我找到了 C POSIX 库 还有其他库吗 GLib http en wikipedia org wiki GLib GObject http en w
  • 看起来像 iOS7 向左导航 V 形的 Unicode 字符

    最接近 iOS7 向后指向导航栏 V 形的大小 与大写字母一样大或大于大写字母 和形状的 Unicode 字符是什么 我正在寻找一种使用 unicode 字符来模拟通常没有 返回 导航的视图的 向后导航 V 形的方法 常规的 对于锐角比 U
  • 黑白 PNG 转 SVG

    我有一个河流 土地掩码来区分土地与河流 湖泊 该文件的大小为 W 43 200x H 21 600 由于 RAM 立即填满 因此无法打开该文件 我已将文件分成 3600 3600 块 它们可以正常打开 然而 我试图在谷歌地图中绘制陆地上的文
  • 关于 GUI 计时器显示后台线程已用时间的建议?

    Issue 我有一个 PyQt GUI 用户按下按钮即可启动后台线程 workerThread 它是从QThread 我想要一个计时器显示 以QLabel 显示自此以来已经过去了多少时间workerThread开始 我希望这个计时器在wor
  • s60 的 python 希伯来语字符串

    我在 S60 上使用 python 我想使用希伯来语字符串 在 GUI 上表示它们并以短信形式发送它们 看来 PythonScriptShell 不接受这样的表达式 例如 u 我能做些什么 谢谢 事态发展 我添加了这一行 coding ut
  • 如何在 Google Chrome 上启用 WebVR?

    我正在尝试创建一个 WebVR 场景 对于此任务 我想在 Google Chrome 上启用 WebVR 我的操作系统是 Windows 8 我使用打开标志chrome flags WebVR 不存在 我怎样才能启用它 Official c
  • HttpClient 请求拦截器,例如在从服务器获取响应时

    我想在请求尝试命中时打开加载程序弹出窗口 并在收到响应后将其关闭 有什么方法可以使用 httpclient 从一个地方执行它 像这样的事情 Injectable export class I1 implements HttpIntercep
  • 如果 showPopup 仅适用于 API 11,如何将菜单链接到带有 ABS 的视图?

    注意 PopupMenu 在 API 级别 11 及更高版本中可用 http developer android com guide topics ui menus html PopupMenu http developer android
  • 使用 AngularJS 获取 Youtube 视频标题

    我在使用 AngularJS 获取 YouTube 视频标题时遇到问题 这是我到目前为止的代码 服务 js var myServices angular module myServices ngResource myServices fac
  • 如何启动 EC2 实例并在每个实例上上传/运行启动脚本?

    我想自动启动一组 Linux EC2 实例 基本上 我想编写一个脚本 程序 实例化我的给定 AMI 的 N 次出现 对于每个启动的实例 它会上传自定义脚本并让脚本运行到实例中 使用 VMWare 我通常会使用vmrun或 Vix SDK 亚
  • pygame.sprite.Group() 做什么

    我正在关注有关 pygame 的视频 我看到了这段代码 crosshair pygame sprite Group 有人能给我解释一下吗 阅读以下文档pygame sprite Group https www pygame org docs
  • Excel VBA application.visible 立即设置回 True

    我已经设置了一个新的 空的 无模式的用户表单 用最少的代码来解决我的问题 当工作簿打开时 执行以下代码来隐藏 Excel 并显示用户窗体 这是工作簿的唯一代码 Private Sub Workbook Open UserForm1 Show
  • parse_str 在元素前面加上 & 符号?

    我一直在玩 cURL 并尝试将数组作为 POST 变量发送 我决定使用 http build query 按预期传递字符串 curl setopt this gt ch CURLOPT POSTFIELDS http build query
  • 如何计算PHP中内置函数的总数? [关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 如何计算
  • 如何从 .Net 中的许多 HTML 文件中读取 xpath 值?

    我的一个文件夹中有大约 5000 个 html 文件 我需要循环遍历它们 打开 使用 xpath 获取 10 个值 关闭并存储在 SQL Server 数据库中 使用 Net 读取 xpath 值的最简单方法是什么 xpath 应该相当稳定
  • 如何通过内存将文件上传到Google Drive [python]

    我一直在论坛上搜索 但没有成功解决我的问题 我正在尝试使用 Google Drive Python API 将内存中的文件上传到 Google Drive 但是 我见过的所有示例都使用磁盘上具有特定文件路径和名称的文件 service bu