品易云推流 关闭
文章详情页
文章 > Python高级 > python如何实现从ftp上下载文件

python如何实现从ftp上下载文件

Python 文件下载

头像

晓曦&sea

2020-07-18 15:45:163700浏览 · 0收藏 · 0评论

python从ftp上下载文件的方法:首先导入ftp模块;然后使用【chdir】命令切换工作路径;再使用“self.ftp.nlst()”命令获取目录下的文件;最后使用“self.ftp.retrbinary()”命令下载ftp文件即可。

#!/usr/bin/python
# coding=utf-8
import os
from ftplib import FTP  # 引入ftp模块
class MyFtp:
    ftp = FTP()    
    def __init__(self,host,port=21):
        self.ftp.connect(host,port)    
    def login(self,username,pwd):
        self.ftp.set_debuglevel(2)  # 打开调试级别2,显示详细信息        
        self.ftp.login(username,pwd)        
        p
rint(self.ftp.welcome)    
    def downloadFile(self,localpath,remotepath,filename):
        os.chdir(localpath)   # 切换工作路径到下载目录
        self.ftp.cwd( remotepath)   # 要登录的ftp目录
        self.ftp.nlst()  # 获取目录下的文件
        file_handle = open(filename,"wb").write   # 以写模式在本地打开文件
        self.ftp.retrbinary('RETR %s' % os.path.basename(filename),file_handle,blocksize=1024)  # 下载ftp文件
        # ftp.delete(filename)  # 删除ftp服务器上的文件
    def close(self):
        self.ftp.set_debuglevel(0)  # 关闭调试        
        self.ftp.quit()if __name__ == '__main__':
    ftp = MyFtp('host')
    ftp.login('username','pwd')
    ftp.downloadFile('E:\\RED\\workspace\\appAuto\\apk\\Android10','/mobile/Android/release10/','xxx.apk')
    ftp.close()

推荐课程:Flask Python Web 全栈开发

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

底部广告图