使用 Paramiko 进行递归目录下载?

2024-01-24

我想通过 SSH 递归下载一个包含未知内容的目录,并一直在尝试 Paramiko。我看过几个如何上传目录的示例,但没有一个示例涵盖递归下载。

我可以列出目录中的所有项目,但无法找到一种方法来了解该项目是文件(要下载)还是目录(要递归调用)。

transport = paramiko.Transport((MY_IP, 22))
transport.connect(username=MY_NAME, password=MY_PASS)
sftp = paramiko.SFTPClient.from_transport(transport)

file_list = sftp.listdir(path='/home/MY_HOME_DIR')
    for item in file_list:
        # Here is an item name... but is it a file or directory?
        print(item)
sftp.close()
transport.close()

那么我如何知道一个项目是文件还是目录呢?


from stat import S_ISDIR

def isdir(path):
  try:
    return S_ISDIR(sftp.stat(path).st_mode)
  except IOError:
    #Path does not exist, so by definition not a directory
    return False

...假设sftp是一个开放的 Paramiko SFTP 连接。

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

使用 Paramiko 进行递归目录下载? 的相关文章

  • Python:在列表理解本身中引用列表理解?

    这个想法刚刚出现在我的脑海中 假设您出于某种原因想要通过 Python 中的列表理解来获取列表的唯一元素 i if i in created comprehension else 0 for i in 1 2 1 2 3 1 2 0 0 3
  • Django 代理模型的继承和多态性

    我正在开发一个我没有启动的 Django 项目 我面临着一个问题遗产 我有一个大模型 在示例中简化 称为MyModel这应该代表不同种类的物品 的所有实例对象MyModel应该具有相同的字段 但方法的行为根据项目类型的不同而有很大差异 到目
  • SQLAlchemy 通过关联对象声明式多对多自连接

    我有一个用户表和一个朋友表 它将用户映射到其他用户 因为每个用户可以有很多朋友 这个关系显然是对称的 如果用户A是用户B的朋友 那么用户B也是用户A的朋友 我只存储这个关系一次 除了两个用户 ID 之外 Friends 表还有其他字段 因此
  • 将数据从 python pandas 数据框导出或写入 MS Access 表

    我正在尝试将数据从 python pandas 数据框导出到现有的 MS Access 表 我想用已更新的数据替换 MS Access 表 在 python 中 我尝试使用 pandas to sql 但收到错误消息 我觉得很奇怪 使用 p
  • 通过最小元素比较对 5 个元素进行排序

    我必须在 python 中使用元素之间的最小比较次数来建模对 5 个元素的列表进行排序的执行计划 除此之外 复杂性是无关紧要的 结果是一个对的列表 表示在另一时间对列表进行排序所需的比较 我知道有一种算法可以通过 7 次比较 总是在元素之间
  • 如何从网页中嵌入的 Tableau 图表中抓取工具提示值

    我试图弄清楚是否有一种方法以及如何使用 python 从网页中的 Tableau 嵌入图形中抓取工具提示值 以下是当用户将鼠标悬停在条形上时带有工具提示的图表示例 我从要从中抓取的原始网页中获取了此网址 https covid19 colo
  • 是否可以忽略一行的pyright检查?

    我需要忽略一行的pyright 检查 有什么特别的评论吗 def create slog group SLogGroup data Optional dict None SLog insert one SLog group group da
  • 基于代理的模拟:性能问题:Python vs NetLogo & Repast

    我正在 Python 3 中复制一小段 Sugarscape 代理模拟模型 我发现我的代码的性能比 NetLogo 慢约 3 倍 这可能是我的代码的问题 还是Python的固有限制 显然 这只是代码的一个片段 但 Python 却花费了三分
  • 以编程方式停止Python脚本的执行? [复制]

    这个问题在这里已经有答案了 是否可以使用命令在任意行停止执行 python 脚本 Like some code quit quit at this point some more code that s not executed sys e
  • 使用 Tkinter 显示 numpy 数组中的图像

    我对 Python 缺乏经验 第一次使用 Tkinter 制作一个 UI 显示我的数字分类程序与 mnist 数据集的结果 当图像来自 numpy 数组而不是我的 PC 上的文件路径时 我有一个关于在 Tkinter 中显示图像的问题 我为
  • OpenCV 无法从 MacBook Pro iSight 捕获

    几天后 我无法再从 opencv 应用程序内部打开我的 iSight 相机 cap cv2 VideoCapture 0 返回 并且cap isOpened 回报true 然而 cap grab 刚刚返回false 有任何想法吗 示例代码
  • 如何加速Python中的N维区间树?

    考虑以下问题 给定一组n间隔和一组m浮点数 对于每个浮点数 确定包含该浮点数的区间子集 这个问题已经通过构建一个解决区间树 https en wikipedia org wiki Interval tree 或称为范围树或线段树 已经针对一
  • AWS EMR Spark Python 日志记录

    我正在 AWS EMR 上运行一个非常简单的 Spark 作业 但似乎无法从我的脚本中获取任何日志输出 我尝试过打印到 stderr from pyspark import SparkContext import sys if name m
  • 从 Flask 访问 Heroku 变量

    我已经使用以下命令在 Heroku 配置中设置了数据库变量 heroku config add server xxx xxx xxx xxx heroku config add user userName heroku config add
  • BeautifulSoup 中的嵌套标签 - Python

    我在网站和 stackoverflow 上查看了许多示例 但找不到解决我的问题的通用解决方案 我正在处理一个非常混乱的网站 我想抓取一些数据 标记看起来像这样 table tbody tr tr tr td td td table tr t
  • 向 Altair 图表添加背景实心填充

    I like Altair a lot for making graphs in Python As a tribute I wanted to regenerate the Economist graph s in Mistakes we
  • 如何计算 pandas 数据帧上的连续有序值

    我试图从给定的数据帧中获取连续 0 值的最大计数 其中包含来自 pandas 数据帧的 id date value 列 如下所示 id date value 354 2019 03 01 0 354 2019 03 02 0 354 201
  • Scrapy:如何使用元在方法之间传递项目

    我是 scrapy 和 python 的新手 我试图将 parse quotes 中的项目 item author 传递给下一个解析方法 parse bio 我尝试了 request meta 和 response meta 方法 如 sc
  • 导入错误:没有名为 site 的模块 - mac

    我已经有这个问题几个月了 每次我想获取一个新的 python 包并使用它时 我都会在终端中收到此错误 ImportError No module named site 我不知道为什么会出现这个错误 实际上 我无法使用任何新软件包 因为每次我
  • 如何使用 Pycharm 安装 tkinter? [复制]

    这个问题在这里已经有答案了 I used sudo apt get install python3 6 tk而且效果很好 如果我在终端中打开 python Tkinter 就可以工作 但我无法将其安装在我的 Pycharm 项目上 pip

随机推荐

  • 如何在 SwiftUI 中将 .enumerated() 与 ForEach 一起使用?

    这是一个按预期工作的简单 SwiftUI 列表 struct App View let items Array 100 200 var body some View List ForEach items id self index item
  • NSURLCache 在启动时是否持久?

    我正在为我的 iOS 应用程序寻找一种在启动后保持不变的网络缓存解决方案 我开始阅读有关 NSURLCache 的内容 但没有看到任何有关持久性的提及 有谁知道当您使用 NSURLCache 然后关闭并打开应用程序时它的行为如何 它持续吗
  • Phonegap 非调试模式和使用许可证密钥签名

    我已经在phonegap 中完成了一个应用程序 并想在谷歌应用程序商店上发布它 每次我下载 apk 文件时 它都处于调试模式 我如何使用密钥或密钥库对其进行签名 以将其上传到 Google Play 因为 Google 不会在调试模式下将其
  • 如何将道具从模板传递到反应根节点?

    我已经成功地在模板上的 div 上渲染我的组件 如下所示 索引 html load render bundle from webpack loader h1 Example h1 div div render bundle main 我的反
  • Objective-C:检查 OSX 中的防火墙状态?

    我的 Objective C 应用程序需要知道 OSX 中的防火墙是否正在运行 以便它可以告诉用户将其关闭或创建新规则 另外 是否可以直接从我的应用程序创建规则 以便用户永远不需要处理网络问题 John 我正在编写一个函数 可以为您提供 O
  • 为什么我无法从 Firebase 实时数据库检索用户名和密码

    我想使用存储在 Firebase 实时数据库中的用户名和密码登录 但我的代码不起作用 我包括我的数据库图片和代码 请帮我 这是数据库图像 这是我的主要活动代码MainActivity java databaseReference Fireb
  • jQuery 中有样式选择器吗?

    例如 如果我想选择它的 alt 是 Home 的每个图像 我可以执行以下操作 img alt Home 但是我怎样才能选择它们的每个元素width例如 在单个选择器中 CSS 属性为 750px EDIT 如果没有这样的选择器 是否有任何插
  • 在 Haskell 中查找函数的行号

    我正在尝试创建一个 Haskell 程序 它将一些简单的 2d 形状绘制到屏幕上 但是当您将鼠标悬停在每个形状上时 它会打印创建该形状的源代码行 为了做到这一点 我希望能够创建带有尺寸参数和指示行号的最终参数的形状 像这样的东西 rect1
  • 使用 Linq 获取第 N 个值

    如何使用 Linq 获取第 N 行 两列都是文本 所以我不能使用最小值 最大值 var nthItem items Skip n First
  • Android 语音识别作为 Android 4.1 和 4.2 上的服务

    我已经成功地让连续语音识别 使用 SpeechRecognizer 类 作为一项服务在所有 Android 版本 最高 4 1 上运行 我的问题是让它在版本 4 1 和 4 2 上工作 因为众所周知 存在一个问题 即 API 没有按照记录进
  • 使用 bufferedimages 将视频编码为 h264?

    我正在尝试使用 java 将大量缓冲图像 由我的应用程序动态创建的预先保存的图像 转换为视频 并希望有一个库可以帮助完成该过程 我探索了许多不同的选项 例如 jcodec 没有关于如何使用它的文档 Xuggler 由于与jdk5及其相关库的
  • scala:向枚举添加方法

    我有一个像这样的简单枚举 object ConditionOperator extends Enumeration val Equal Value equal val NotEqual Value notEqual val GreaterO
  • git pull:不断告诉我在拉取之前隐藏本地更改

    当我尝试使用 git pull 拉取我的 git 存储库时 它不断告诉我我有本地更改 尽管我没有触及任何提到的文件 有人可以解释这种行为并知道解决方案吗 git 状态 On branch master Your branch is behi
  • GlassFish 4 / EclipseLink 延迟加载 @ManyToOne 关系失败

    GlassFish 4 实际上是它的 JPA 实现 即 EclipseLink 无法从我们的 Java EE 7 应用程序延迟加载 ManyToOne JPA 关系 默认 渴望加载是可以的 但不能是延迟加载 学生 实体中的关系是 ManyT
  • 将值传递给路由

    我有一份物品清单 当用户点击某个项目时 用户将被带到项目详细信息页面 我想将包含项目详细信息 如项目的图像 URL 的对象传递给路线 但是 我不想在路由网址中公开它 如果有办法做类似的事情 a item name a 那将是黄金 我已经看到
  • 如何用vb6查询网站?

    vb6中查询网页的函数是什么 我想做的是从雅虎财经获取数据 例如 此 url 返回一个 csv 文件 其中包含通用电气的股息值 我需要在函数中运行它并让函数返回答案 说到 Excel 您可以创建网络查询 http office micros
  • 在 Mac 上更新 Python

    我想在 mac 上将 python 2 6 1 更新到 3 x 但我想知道是否可以使用终端来完成此操作 或者我必须从 python 网站下载安装程序 我问这个问题是因为安装程序没有更新我的终端 python 版本 OS X 上的默认 Pyt
  • Hibernate 导致:org.hibernate.AnnotationException:未知的mappedBy

    我有两节课 Entity Table name profil public class Profil Id GeneratedValue strategy GenerationType AUTO Column name id private
  • 将 Tensorflow 中除 max 之外的所有值归零

    我有一个数组 0 3 0 5 0 79 0 2 0 11 我想将除最大值之外的所有值转换为零 所以结果数组将是 0 0 0 79 0 0 在 Tensorflow 图中执行此操作的最佳方法是什么 如果你想保留最大值的所有出现 你可以使用 c
  • 使用 Paramiko 进行递归目录下载?

    我想通过 SSH 递归下载一个包含未知内容的目录 并一直在尝试 Paramiko 我看过几个如何上传目录的示例 但没有一个示例涵盖递归下载 我可以列出目录中的所有项目 但无法找到一种方法来了解该项目是文件 要下载 还是目录 要递归调用 tr