Python 3.5 SFTP文件传输

Python 3.5 SFTP file transfer

我想在 Python 3.5 中使用 paramiko 进行 SFTP 文件传输。我知道 paramiko 依赖于 PyCrypto 并且已经阅读了 Python 3.5 中的 PyCrypto 安装问题。虽然我看到了很多关于这个主题的问题,但我还没有找到在 Python 3.5 中成功传输 SFTP 文件的解决方案。

我的第一个问题:是否可以使用Python 3.5 进行SFTP 文件传输?如果是这样,paramiko 会起作用吗?如果以上方法可行,为什么我在尝试安装 PyCrypto 时收到以下错误?

error: [WinError 2] The system canot find the file specified
**Failed building wheel for pycrypto**


我的第二个问题:如果 paramiko 不能与 Python 3.5 一起使用,是否有任何替代方案或者我必须恢复到以前的 python 版本才能进行 SFTP 文件传输?

解决方案是在我的 Linux 服务器上安装 Python 3.5.1,然后从那里安装 pip install paramiko。我仍然不确定为什么 PyCrypto 不能安装在 Python 3.5 for Windows 但这是我能找到的唯一解决方案。

如果你没有安装 C++ 编译器(需要使用 pip 来编译这个库),你可以为 Python 3.5 安装 PyCrypto 二进制文件

从该站点安装 PyCrypto 二进制文件: https://github.com/sfbahr/PyCrypto-Wheels

最好的方法是:

64位Python

c:\Python35\Scripts\pip.exe 安装 --use-wheel --no-index --find-links=https://github.com/sfbahr/PyCrypto-Wheels/raw/master/pycrypto-2.6.1-cp35-none-win_amd64.whl pycrypto

32位Python

c:\Python35\Scripts\pip.exe 安装 --use-wheel --no-index --find-links=https://github.com/sfbahr/PyCrypto-Wheels/raw/master/pycrypto-2.6.1-cp35-none-win32.whl pycrypto

当然用你的 python pip 路径

替换 c:\Python35\Scripts\pip.exe

要了解您的 python 版本,运行 python 并查看括号中显示的体系结构:

C:\Users\utilisateur>python

Python 3.5.1 |蟒蛇 4.0.0(64 位)| (默认,2016 年 2 月 16 日,09:49:46)[MSC v.1900 64 位AMD64)] 在 win32 上 键入 "help"、"copyright"、"credits" 或 "license" 以获取更多信息。

希望对您有所帮助。