python ftp上传_Python FTP传输的简单示例
对python这个高级语言感兴趣的小伙伴,下面一起跟随编程之家 jb51.cc的小编两巴掌来看看吧!
访问FTP,无非两件事情:upload和download,最近在项目中需要从ftp下载大量文件,然后我就试着去实验自己的ftp操作类,如下(PS:此段有问题,别复制使用,可以参考去试验自己的ftp类!)
# @param Python之FTP传输
# @author 编程之家 jb51.cc|jb51.cc
import os
from ftplib import FTP
class FTPSync():
def __init__(self,host,usr,psw,log_file):
self.host = host
self.usr = usr
self.psw = psw
self.log_file = log_file
def __ConnectServer(self):
try:
self.ftp = FTP(self.host)
self.ftp.login(self.usr,self.psw)
self.ftp.set_pasv(False)
return True
except Exception:
return False
def __CloseServer(self):
try:
self.ftp.quit()
return True
except Exception:
return False
def __CheckSizeEqual(self,remoteFile,localFile):
try:
remoteFileSize = self.ftp.size(remoteFile)
localFileSize = os.path.getsize(localFile)
if localFileSize == remoteFileSize:
return True
else:
return False
except Exception:
return None
def __DownloadFile(self,localFile):
try:
self.ftp.cwd(os.path.dirname(remoteFile))
f = open(localFile,'wb')
remoteFileName = 'RETR ' + os.path.basename(remoteFile)
self.ftp.retrbinary(remoteFileName,f.write)
if self.__CheckSizeEqual(remoteFile,localFile):
self.log_file.write('The File is downloaded successfully to %s' + '\n' % localFile)
return True
else:
self.log_file.write('The localFile %s size is not same with the remoteFile' + '\n' % localFile)
return False
except Exception:
return False
def __DownloadFolder(self,remoteFolder,localFolder):
try:
fileList = []
self.ftp.retrlines('NLST',fileList.append)
for remoteFile in fileList:
localFile = os.path.join(localFolder,remoteFile)
return self.__DownloadFile(remoteFile,localFile)
except Exception:
return False
def SyncFromFTP(self,localFolder):
self.__DownloadFolder(remoteFolder,localFolder)
self.log_file.close()
self.__CloseServer()
# End www.jb51.cc
python ftp上传_Python FTP传输的简单示例相关推荐
- python分片上传_python上传文件到oss
基础环境 # +++++ 阿里云OSS开发指南里都有详细的步骤,在这里整理了一下自己需要的东西 # 确定开发环境,centOS默认安装了python2.7 # python -V # 安装python ...
- python批量上传_python批量上传
环境 python 3.6 你换成其他3x的版本也没关系 flask 项目很小,主要是演示一下使用flask接收页面上传的文件的方法.项目包含一个批量示范页面. 演示页面文件,为了方便演示.我把htm ...
- python 头条 上传_Python+selenium自动化之文件上传
邮箱的主要功能就是邮件消息的收发阅读,之前的文章写了邮件的查收和编写,本篇介绍邮件的附件上传.还是以腾讯企业邮箱为例,进行实际案例操作. 文件上传的实现大体分为两种,一种是input标签,一种非inp ...
- python分片上传_python 分片上传大格式
form-data类型 def multipart_producer(boundary, filename): """构建 multipart, 返回 yield, 实现 ...
- python监控windows日志_Python 监控日志的简单示例
这篇文章主要为大家详细介绍了Python 监控日志的简单示例,具有一定的参考价值,可以用来参考一下. 对python这个高级语言感兴趣的小伙伴,下面一起跟随512笔记的小编两巴掌来看看吧! 一个简易的 ...
- python文本处理实例_Python 文件处理的简单示例
这篇文章主要为大家详细介绍了Python 文件处理的简单示例,具有一定的参考价值,可以用来参考一下. 对python这个高级语言感兴趣的小伙伴,下面一起跟随512笔记的小编两巴掌来看看吧! 相关的AP ...
- python读写文件实例_python读写文件的简单示例
这篇文章主要为大家详细介绍了python读写文件的简单示例,具有一定的参考价值,可以用来参考一下. 感兴趣的小伙伴,下面一起跟随512笔记的小编罗X来看看吧. 首先看一个例子: # 来自www.512 ...
- python 头条 上传_python 简单爬取今日头条热点新闻(一)
今日头条如今在自媒体领域算是比较强大的存在,今天就带大家利用python爬去今日头条的热点新闻,理论上是可以做到无限爬取的: 在浏览器中打开今日头条的链接,选中左侧的热点,在浏览器开发者模式netwo ...
- 怎样用python计算π的值_Python 计算 π 值的简单示例
对python这个高级语言感兴趣的小伙伴,下面一起跟随编程之家 jb51.cc的小编两巴掌来看看吧! π是一个无数人追随的真正的神奇数字.我不是很清楚一个永远重复的无理数的迷人之处.在我看来,我乐于计 ...
最新文章
- 群同态基本定理证明_近世代数(3)——群的基本性质
- Lua编译实践1-词法分析:
- mac系统学习和快捷键
- 个人博客mysql 建表与数据测试
- python视频处理为卡通风格_使用python代码将照片变成卡通图片
- 什么是分布式_什么是分布式系统,如何学习分布式系统?
- Image Gallery
- Repast HPC 2.0安装及实例模型运行总结
- 基本农田卫星地图查询_水经注万能地图下载器软件主界面功能说明
- 使用css让div半透明
- Json汉化-使用JavaScript和百度翻译API免费实现Json文件的汉化
- UT000020: Connection terminated as request was larger than 10485760
- sql server为什么建表时在表名前加''[dbo]''
- 查询快递 教你一个方法按照物流途径城市筛选签收地
- 关于《算法(第四版 谢路云译)》标准库In、Out、StdOut和StdIn的正确配置和调用经验分享(以BinarySearch二分查找算法为例)
- 三冲IPO,亨达海天能否敲开美股上市大门?
- 字幕批量翻译 字体定制
- zenmap扫描ip段_zenmap端口扫描工具(ip端口扫描器)V7.71 最新版
- 商户后台返回数据签名错误_微信小程序 用户信息开放数据校验与解密
- git branch -a无法获取远程分支,git fetch依然无法获取的解决办法
热门文章
- Python最实用的25个小技巧
- python面试题汇总(1)
- web基础编程-图片管理网站
- 讯达机器人_科大讯飞新品频发完善场景布局“双11”斩获三大平台25项冠军
- EMNLP'20最佳论文揭晓!八块肌肉=能打电话?!
- 开源开放 | 开源大学在线实践数据集及知识图谱MOOPer(CCKS2021)
- 安装tensorflow出现超时,找不到指定模+python 各个指定版本安装
- Android官方开发文档Training系列课程中文版:使用Fragment构建动态UI之Fragment创建
- Android官方开发文档Training系列课程中文版:构建第一款安卓应用之环境配置
- Keras共享某个层