Py学习  »  问与答

求助:python下载远端服务器上的文件,paramiko安装问题

01071028 • 11 年前 • 6151 次点击  

有个需求: 用户在页面上点击“下载”链接,WEB可以根据链接地址,去下载远端机器( Linux )上的文件,返回给用户去保存。

我查了些资料,可以使用FTPLIB,但远端服务器上得安装FTP. 后来找到paramiko这个模块可以解决此问题,但是安装好麻烦呀! 参考:http://blog.csdn.net/nivana999/article/details/8028149

我在windows下安装paramiko,已成功安装paramiko 1.12, pycrypto 2.6 在python的交互命令行中输入import paramiko,成功。

但是我将import paramiko加入到用apache布署的项目中时,却提示错误: “DLL load failed: 找不到指定的模块。”

这是怎么回事呢?google了一下,有人说是要用pycrypto 2.1,但是装了 pycrypto 2.1后,安装paramiko时老是自己去找pycrypto2.6,该怎么做?

或者有人可以指导下应该怎么实现这个需求吗?谢谢!

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/346
 
6151 次点击  
文章 [ 3 ]  |  最新文章 11 年前
Py站长
Reply   •   1 楼
Py站长    11 年前

wget 需要 python进行封装,比如有人做的 https://pypi.python.org/pypi/wget

或者你可以用一些 具有下载能力(get)的工具,如requests 等 也可以呀

01071028
Reply   •   2 楼
01071028    11 年前

最终还是用pycrypto 2.1解决了问题。 需求实现方法: WEB客户端点击页面链接 ==》python用paramiko模拟SSH连接,到远程LINUX服务器上下载文件到WEB服务器上 ==》将刚刚下载到WEB服务器上的文件用URL组织起来,如/site_media/temp/test.tar.gz ==》return HttpResponseRedirect('/site_media/temp/test.tar.gz') ==》WEB客户端看到的是另存文件的对话框

以上可实现需求,不知是不是这种方法笨了点,走了弯路?

另外,问: python使用wget是不是还需要安装其它的东西?因为wget毕竟不是python的内库呀。

Py站长
Reply   •   3 楼
Py站长    11 年前

wget shell 命令就可以了呀