背景:需要对ftp进行操作,涉及上传和下载操作
 
from ftplib import FTP

ftp = FTP(host=“ftp的hostname",user=‘登录用户名', passwd='登录密码')  # 连接到ftp

ftp.set_debuglevel(2)  # 打开调试级别2,显示详细信息

def download(filename,bufsize=1024):# bufsize设置的缓冲区大小
file_handle = open(filename, "wb").write # 以写模式在本地打开文件
ftp.retrbinary("RETR %s"%filename, file_handle, bufsize) # 接收服务器上文件并写入本地文件 def upload(filename,bufsize=1024):
file_handle2 = open(filename, "rb") # 以只读模式打开本地文件
   filename = filename.split("/")[-1 #有可能上传路径,所以处理一下
ftp.storbinary('STOR %s'%filename, file_handle2, bufsize)#上传本地filename到服务器,filename为上传到服务器上后显示的名字,第二个参数为上传的本地文件 ftp.getwelcome() # 打印出欢迎信息
ftp.cwd('目录名') # 进入远程目录
ftp.rmd(‘目录名') # 在ftp上删除目录
ftp.mkd('目录名') # 在ftp上创建目录
ftp.pwd() # 打印当前ftp目录
ftp.dir() # 打印ftp上当前目录下的所有文件 ftp.quit() # 退出ftp
具体说明:
1.ftp = FTP(host=“ftp的hostname",user=‘登录用户名', passwd='登录密码)
实际调用了FTP().login来登录
 
2.download从ftp上下载文件
本地文件需要已wb写模式打开,然后通过retrinary()方法下载
 
3.upload上传本地文件到ftp服务器上
本地文件已只读模式打开,然后通过storbinary()方法上传
第一个参数为上传命令,filename为放到服务器上的名字;第二个参数为要上传的本地文件 
 
4.其他一些常用方法
getwelcome():打印ftp欢迎语,在ftp服务器上设置的
cwd(‘目录名’):进入ftp服务器的某目录,切换目录
rmd(‘目录名’):删除目录
mkd(‘目录名’):创建目录
ftp.pwd():打印当前目录
dir():打印当前目录下的所有文件
quit()或close():关闭ftp连接
 
备注:如果想实现上传目录或根据正则匹配上传文件,需要自己单独写方法

python对ftp进行操作的更多相关文章

  1. Python开发【第三篇】:Python基本之文件操作

    Python基本之文本操作 一.初识文本的基本操作 在python中打开文件有两种方式,即:open(...) 和  file(...) ,本质上前者在内部会调用后者来进行文件操作,推荐使用 open ...

  2. python学习笔记:文件操作和集合(转)

    转自:http://www.nnzhp.cn/article/16/ 这篇博客来说一下python对文件的操作. 对文件的操作分三步: 1.打开文件获取文件的句柄,句柄就理解为这个文件 2.通过文件句 ...

  3. Python之FTP多线程下载文件之分块多线程文件合并

    Python之FTP多线程下载文件之分块多线程文件合并 欢迎大家阅读Python之FTP多线程下载系列之二:Python之FTP多线程下载文件之分块多线程文件合并,本系列的第一篇:Python之FTP ...

  4. Python之FTP多线程下载文件之多线程分块下载文件

    Python之FTP多线程下载文件之多线程分块下载文件 Python中的ftplib模块用于对FTP的相关操作,常见的如下载,上传等.使用python从FTP下载较大的文件时,往往比较耗时,如何提高从 ...

  5. python实现FTP程序

    python实现FTP程序 程序源码 上传功能 查看文件 cd功能 创建目录 程序源码 目录结构 服务端 主程序 import optparse import socketserver import ...

  6. python从FTP下载文件

    #!/usr/bin/python # -*- coding: utf-8 -*- """ FTP常用操作 """ from ftplib ...

  7. python实现FTP弱口令扫描器与简单端口扫描器

    python实现FTP弱口令扫描器与简单端口扫描器 目录 FTP弱口令扫描器 简单端口扫描器 参考: https://blog.csdn.net/rebelqsp/article/details/22 ...

  8. 【python】FTP客户端

    Python中默认安装的ftplib模块定义了FTP类,其中函数有限,可用来实现简单的ftp客户端,用于上传或下载文件,函数列举如下 ftp登陆连接 from ftplib import FTP #加 ...

  9. python + docker, 实现天气数据 从FTP获取以及持久化(三)-- python获取FTP数据

    前言 经过前面两个小节的介绍,我们已经完成了MySQL数据库的搭建和数据库操作的事宜. 在本小节中,我们需要完成的任务是:使用python从FTP服务其上面获取文本文件. 搭建测试FTP服务器 LZ的 ...

随机推荐

  1. ios8.1.1系统怎么取消下划线

    http://zhidao.baidu.com/link?url=y-3oAiOsuCSvoCD-7H2Uvgl_UI1BQQuNvA2jHKCRAGmZSH7_RrwDijKtRouMBa5yF_L ...

  2. py库: Selenium (自动化测试)

    http://blog.csdn.net/liujingqiu/article/details/50458553 http://www.cnblogs.com/zhaof/p/6953241.html ...

  3. iOS基础知识之属性及属性关键字

    iOS属性及属性关键字 一.属性功能:1.给现有的成员变量生成一对setter/getter方法.2.如果没有声明成员变量,自动声明一个_属性名的私有变量(默认的成员变量是受保护的). 二.属性关键字 ...

  4. JVM jmap dump 分析dump文件 / 如何使用Eclipse MemoryAnalyzer MAT 排查线上问题

    jhat简介 jhat用来分析java堆的命令,可以将堆中的对象以html的形式显示出来,包括对象的数量,大小等等,并支持对象查询语言 这个工具并不是想用于应用系统中而是用于"离线" ...

  5. jqGrid 获取多级标题表头

    1.jgGrid没有提供此方法获取如下标题 2.实现代码 getHeaders:function(){ var headers=[],temptrs=[]; //select the group he ...

  6. ASP.NET Core MVC 概述

    https://docs.microsoft.com/zh-cn/aspnet/core/mvc/overview?view=aspnetcore-2.2 ASP.NET Core MVC 概述 20 ...

  7. ubuntu16.04搭建geodjango+postgresql+postgis的WebGIS框架(二))安装postgresql和postgis

    卸载老版本sudo dpkg --purge postgis postgresql-9.3-postgis1.安装postgresql sudo apt-cache search postgresql ...

  8. golang 字符串截取

    java中有SubString,那golang怎么截取字符串? str := "hello world" fmt.Print(str[:]) 以上代码输出 hello 数组,sli ...

  9. Tomcat的相关配置问题

    Tomcat的目录结构bin ---  存放启动和关闭tomcat的脚本文件 conf --- 存放tomcat的各种配置文件  (主要有server.xml,context.xml,web.xml) ...

  10. Windows 环境变量立即生效

    先进环境变量 保存一个份PATH值. 万一改错就不好了 cmd窗口中 set path=XXXXXXXX