使用Python将zip文件从Google云存储上传到SFTP服务器,而不加载到内存中

2023-11-30

我想将大型 zip 文件从 google 云存储桶上传到 SFTP 服务器,而不加载到内存和云功能中。 我正在使用 pysftp 进行 SFTP 传输。

with pysftp.Connection(host="SFTP Server", username='test', password='test', cnopts=cnopts) as sftp:
    sftp.cwd("/tmp")
    sftp.put("zip_file_from_google_bucket")

我们可以访问存储桶中文件的操作系统路径并提供文件路径sftp.put() since gs://路径将不会被识别sftp.put()?

我们还有其他方法可以转移吗?

请指教。


首先,更好地使用Paramiko。 pysftp 已经死了。看pysftp 与 Paramiko。无论如何,以下内容都适用于 Paramiko 和 pysftp。


Combine 帕拉米科SFTPClient.open with GCS Blob.download_to_file:

client = storage.Client(credentials=credentials, project='myproject')
bucket = client.get_bucket('mybucket')
blob = bucket.blob('archive.zip')

with sftp.open('/sftp/path/archive.zip', mode="w+", bufsize=32768) as f:
    blob.download_to_file(f)

或者,组合SFTPClient.putfo with Blob.open.

with blob.open("rb") as f:
    sftp.putfo(f, '/sftp/path/archive.zip')

(未经测试,但至少应该给你这个想法)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用Python将zip文件从Google云存储上传到SFTP服务器,而不加载到内存中 的相关文章

随机推荐

  • Azure Blob SAS 和 Cache-Control 确保资源得到缓存

    我们提供存储在 Azure Blob 容器上的私有资源 图像 文件等 安全性是使用以下方式实现的共享访问签名 为每个资源请求创建 例如 两个请求意味着两个不同的访问令牌 一般来说 安全 URL 由文件名和作为查询字符串传递的令牌组成 例如
  • 解决 n 皇后难题

    我刚刚解决了python中的nqueen问题 该解决方案输出在 nXn 棋盘上放置 n 个皇后的解决方案总数 但尝试使用 n 15 需要一个多小时才能得到答案 任何人都可以看一下代码并给我一些加速这个程序的技巧 一个新手Python程序员
  • 如何使用由 AJAX/PHP 填充的 DropDownList 中选定值的值

    我有两个下拉列表的表单 假设 A 和 B 当我从 A 中选择一个值时 将使用 AJAX 相应地填充 B 在同一页面中 我有一个按钮 按下该按钮时 会将下拉列表中所选项目的值发布到另一个 PHP 页面 我遇到的问题是 B 的选定值返回为空白
  • 如何检索 BigQuery 嵌套记录的动态嵌套键列表

    我的 ELT 工具在 bigquery 中导入我的数据 并自动生成 扩展动态嵌套键的架构 在下面的架构中 在properties 看起来像这样 如何获取重复记录的嵌套键列表 例如 当这些项目表示属性非空时 我可以按属性进行分组 我努力了 s
  • 无法解析以下类的超类型。请确保类路径中具有所需的依赖项:

    我无法编译 Android Kotlin 项目 我最近将应用程序从纯 Java 更新为 Kotlin 我只在单个 Activity 上完成了此操作 但我无法运行该项目 摇篮日志 e 无法解析以下类的超类型 请确保类路径中具有所需的依赖项 c
  • Gspread - 更改监听器?

    我当前运行一个守护程序线程 该线程获取所有单元格值 计算是否有更改 然后在循环中写出依赖单元格 即 def f while not event is set update event wait 15 Thread target f star
  • 不循环地排空或丢弃发电机?

    在 CSP 样式进程的异常处理程序中 我需要读取并丢弃通道的全部内容 以便允许其他正在阻塞的进程完成发送 该接口提供了一个用于接收的生成器 是否有比以下更快的方法来消耗和丢弃生成器的全部内容 for in chan pass 有一个稍微快一
  • Python openpyxl 读取直到空单元格

    我正在尝试从 Excel 文件中读取一列 直到它遇到空单元格 然后它需要停止读取 到目前为止我的代码 import openpyxl import os def main filepath os getcwd test xlsx wb op
  • 用于计算 c 中 e 的数字的应用程序

    谁能解释一下这段代码是如何计算的e作品 对于如此复杂的任务来说 看起来很简单 但我什至无法理解这个过程 它由 Xavier Gourdon 于 1999 年创建 int main int N 9009 a 9009 x 0 for int
  • 如何以编程方式从 InfoPath XSN 模板创建 InfoPath 表单

    我需要一个从 SharePoint 服务器上存在的 XSN 模板创建 InfoPath 实例表单的解决方案 我正在使用这种方法但这会提取服务器临时目录中的模板文件 我们可能没有写入权限 对此有更好的解决方案吗 您只需将 CAB 库更改为可以
  • Spring JdbcTemplate“插入..选择..”不起作用

    我正在尝试使用 Spring JdbcTemplate 执行以下 SQL INSERT INTO japan wht PIVOT 20427002 doc header text value date total amt is refund
  • 如何将事件处理程序附加到运行时创建的 ASP.NET 控件?

    大家早上好 我有一个与控件和事件处理有关的问题 假设我想创建一个LinkButton protected void loadLinkButton ContentPlaceHolder content ContentPlaceHolder t
  • block_in_place和spawn_blocking如何选择?

    我与 tokio 合作很多 并且一直在使用产卵阻塞用于阻止线程的代码 然后我看到了文档就地块看起来它是前者的无限制 发送 静态 版本 我的问题是 如果我已经在线程运行时 什么时候不建议使用 block in place 每种驱动同步码的方法
  • 偏态正态分布

    我们有位置 0 尺度 1 和形状 0 的偏斜正态分布 那么它与均值 0 和方差 1 的标准正态分布相同 但是如果我们更改形状参数 例如形状 5 则均值和方差也会发生变化 我们如何用不同的形状参数值来修复均值和方差 只要看看如何计算偏态正态分
  • 如何让 PropertyGrid 显示 SaveFileDialog?

    我有一个属性网格控件 我希望能够在用户将数据导出到新文件的过程中显示 SaveFileDialog 我可以轻松地将 OpenFileDialog 与 FileNameEditor 连接起来 但似乎没有用于保存文件的等效类 是否存在可以在 S
  • 如何在Python中使用图像处理找到物体的直径?

    给定一张包含一些不规则物体的图像 我想找到它们各自的直径 感谢这个答案 我知道如何识别物体 但是 是否可以测量图像中显示的物体的最大直径 我已经调查过scipy ndimage文档并没有找到专门的功能 物体识别代码 import numpy
  • Delphi,VirtualStringTree - 类(对象)而不是记录

    我需要使用类而不是 VirtualStringTree 节点的记录 我应该像这样声明它标准 但在这种情况下 棘手 PNode TNode TNode record obj TMyObject end var fNd PNode begin
  • 这里内部发生​​了什么?

    class A int i 10 void show System out println show class B extends A int j 20 void show1 System out println show1 public
  • 错误 TS2339:类型“CordovaPlugins”上不存在属性“诊断”

    我正在使用离子2 我跟着this 并执行了以下操作 cordova plugin add cordova plugins diagnostic npm install g typings typings install dt cordova
  • 使用Python将zip文件从Google云存储上传到SFTP服务器,而不加载到内存中

    我想将大型 zip 文件从 google 云存储桶上传到 SFTP 服务器 而不加载到内存和云功能中 我正在使用 pysftp 进行 SFTP 传输 with pysftp Connection host SFTP Server usern