搭了一个ftp站点,没想到的是利用客户端的时候,服务器当掉了,于是自己写了一个下载ftp站点的脚本,脚本不大,不超过30行。可能利用了一点函数式的编程思想吧。
源代码:
#/usr/bin/env python
import ftplib, sys, os
local_root = '/home/calvin/learn/tsace'
host = 'localhost'
username = 'jesse'
passewd = '123456'
f = False
writeFile = lambda filename: open(filename, 'w').write
getcwd = lambda curwd: curwd == '/' and '/' or (curwd + '/')
createDir = lambda dirname: not os.path.exists(dirname) and os.mkdir(dirname)
def isDirectory(filename):
try:
f.cwd(filename)
createDir(local_root+filename)
return True
except:
return False
def recursiveDownload(filelist, curpwd):
global local_root
map(lambda file: isDirectory(getcwd(curpwd) + file) and [recursiveDownload(f.nlst(), f.pwd())] or f.retrlines('RETR '+ (getcwd(curpwd) + file), writeFile(local_root + getcwd(curpwd) + file)), filelist)
if __name__ == '__main__':
f = ftplib.FTP(host)
resp = f.login(username, passewd)
recursiveDownload(f.nlst(), f.pwd());
f.quit()
分享到:
相关推荐
python从FTP上下载文件,python搜集的FTP下载文件汇总,网上收集
支持上传,下载ftp的文件,备份,递归。
此软件用Python编写,实现FTP协议的下载器,分客户端服务端两个文件,也可用客户端直接连接外网FTP实现下载
python上传excel表格数据到ftp服务器
用python写的,获取远程服务器文件目录列表及删除文件,适用获取多个文件列表多层文件夹
主要介绍了python实现下载整个ftp目录的方法,文中给出了详细的示例代码,相信对大家的理解和学习具有一定的参考借鉴价值,有需要的朋友可以一起来学习学习。
文件传输系统,基于ftp协议,使用python语言开发,虽然python里面已经有ftplib模块,可以很容易的实现ftp服务器。这次我使用的是socket实现client与ftp server之间的通讯和文件传输,client另起一个flask服务器,...
本资源为Python实现的FTP服务器源码,可以实现文件的上传、下载、查看功能,有需要的朋友可以下载一下。
主要介绍了python实现支持目录FTP上传下载文件的方法,适用于windows及Linux平台FTP传输文件及文件夹,需要的朋友可以参考下
主要为大家详细介绍了python实现FTP文件下载功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
主要为大家详细介绍了python实现从ftp服务器下载文件,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
python多线程,断点续传下载程序,功能比较简单,可以进行二次开发。实现更好用的 功能。
pyhton 实现ftp 支持文件get下载
python 实现FTP操作 上传文件 下载文件 删除文件
本篇文章主要介绍了Python实现FTP上传文件或文件夹实例(递归),具有一定的参考价值,有兴趣的可以了解一下。
主要介绍了Python FTP文件定时自动下载实现过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
要通过FTP上传文件,可以按照以下描述进行操作: 导入所需模块:首先,导入ftplib模块来实现FTP连接和操作。 建立FTP连接:使用ftplib模块中的FTP类创建一个FTP对象,并使用它来建立与FTP服务器的连接。需要提供...
使用python3简单编写的FTP服务器,安装 pyinstaller组件可以打包程序,编译之前需要配置程序目录,执行目录下批处理可以打包成exe文件,运行后可以做简单的FTP服务器,代码来源于网上。
Python2开启FTP局域网共享,通过简单的命令就可以分享文件。