是否有一个统一的 python 库来使用不同的协议传输文件

Posted

技术标签:

【中文标题】是否有一个统一的 python 库来使用不同的协议传输文件【英文标题】:Is there a uniform python library to transfer files using different protocols 【发布时间】:2009-05-29 12:22:05 【问题描述】:

我知道有ftplib 用于ftp,shutil 用于本地文件,那么NFS 呢?我知道 urllib2 可以通过 HTTP/HTTPS/FTP/FTPSget 文件,但不能put 文件。

如果有一个统一的库可以自动检测带有URI的协议(FTP/NFS/LOCAL)并透明地处理文件传输(get/put),那就更好了,它存在吗?

【问题讨论】:

你能解释一下这个用例吗?怎么可能不事先知道您使用的是哪种协议?这在什么情况下有用? 简单:复制适用于任何类型 URL 的 。我想说这样的工具会派上用场很多用途。现在,你必须使用 putty/scp, wget, .... 除非没有“NFS://”方案;会和“file://”一样吗? 【参考方案1】:

您想查找并使用 pycurl/libcurl。 Libcurl:http://curl.haxx.se/ PyCurl:http://pycurl.sourceforge.net/ - curl 支持 http://、file:// 和 ftp:// uri。我使用它取得了很大的成功。

【讨论】:

【参考方案2】:

看看 KDE ioslaves。他们可以管理您描述的所有协议,以及其他一些协议(samba、ssh、...)。

您可以通过 PyKDE 实例化 IOSlaves,或者如果该依赖关系太大,您可以使用 subprocess 模块从 python 管理 ioslave。

【讨论】:

以上是关于是否有一个统一的 python 库来使用不同的协议传输文件的主要内容,如果未能解决你的问题,请参考以下文章

C++调用Python浅析

是否有 Python 库可以模拟来自不同地址的网络流量

我可以使用第三方 Java 库 (.jar) 来使用 Kotlin 进行 Android 开发吗?

python包含不同长度的list的一维数组用0填充统一长度

Python:我需要一个代码来使用 HTTPS 自动登录网站 [关闭]

用Python来使用科大讯飞语音识别,so easy