# -*- coding: utf-8 -*-
#python 27
#2018.12.27
#实现从ftp上下载文件到本地
from ftplib import FTP
def ftpconnect(host, username, password):
ftp = FTP() # 设置变量
timeout = 30
port = 21
ftp.connect(host, port, timeout) # 连接FTP服务器
ftp.login(username,password) # 登录
return ftp
def downloadfile(ftp, remotepath, localpath):
ftp.cwd(remotepath) # 设置FTP远程目录(路径)
list = ftp.nlst() # 获取目录下的文件,获得目录列表
for name in list:
print(name)
path = localpath + name # 定义文件保存路径
f = open(path, 'wb') # 打开要保存文件
filename = 'RETR ' + name # 保存FTP文件
ftp.retrbinary(filename, f.write) # 保存FTP上的文件
ftp.set_debuglevel(0) #关闭调试
f.close() #关闭文件
if __name__ == "__main__":
ftp = ftpconnect('192.168.2.250', "dev-app",'360che.com')
downloadfile(ftp,'/App/android/','e:/android/')
ftp.quit()
# -*- coding: utf-8 -*-
#python 27
#2018.12.27
#实现从ftp上下载文件到本地\并筛选出最新的一个文件
from ftplib import FTP
import os
def ftpconnect(host, username, password):
ftp = FTP() # 设置变量
timeout = 30
port = 21
ftp.connect(host, port, timeout) # 连接FTP服务器
ftp.login(username,password) # 登录
return ftp
def downloadfile(ftp, remotepath, localpath):
ftp.cwd(remotepath) # 设置FTP远程目录(路径)
list = ftp.nlst() # 获取目录下的文件,获得目录列表
for name in list:
print(name)
path = localpath + name # 定义文件保存路径
f = open(path, 'wb') # 打开要保存文件
filename = 'RETR ' + name # 保存FTP文件
ftp.retrbinary(filename, f.write) # 保存FTP上的文件
ftp.set_debuglevel(0) #关闭调试
f.close() #关闭文件
def new_report(test_report):
lists = os.listdir(test_report) #列出目录的下所有文件和文件夹保存到lists
print(list)
lists.sort(key=lambda fn:os.path.getmtime(test_report + "\\" + fn))#按时间排序
file_new = os.path.join(test_report,lists[-1]) #获取最新的文件保存到file_new
print(file_new)
return file_new
if __name__ == "__main__":
ftp = ftpconnect('192.168.2.250', "dev-app",'360che.com')
downloadfile(ftp,'/App/android/','e:/android/')
ftp.quit()
test_report="E:/APP/0606"#目录地址
new_report(test_report)