背景:需要对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. 8.Appium的基本使用-2(安装node.js)

    node.js 下载地址:https://nodejs.org/en/download/下载 64-bit 下载包下载完成双击安装:

  2. py库: pymysql、 json (mysql数据库)

    数据库查询结果,用json返回: #连接数据库 import pymysql print(pymysql.VERSION) conn = pymysql.Connect(host='localhost ...

  3. 代码:CSS仿制 苹果按钮图标

    首先,先复习一下:CSS的线性渐变.径向渐变 .linear{ background-image:-webkit-linear-gradient(90deg,#f8f8f8 20%,#dae9fa 9 ...

  4. 《算法》第五章部分程序 part 7

    ▶ 书中第五章部分程序,包括在加上自己补充的代码,字符串的二进制表示.十六进制表示.图形表示 ● 二进制表示 package package01; import edu.princeton.cs.al ...

  5. java中常用工具类

    目录 一. org.apache.commons.io.IOUtils 二. org.apache.commons.io.FileUtils 三. org.apache.commons.lang.St ...

  6. WPF按钮响应函数中执行操作耗时较长时,UI 界面不能实时更新——问题原因与解决方案

    原因: 一般来说,一个WPF窗口程序,只有一个UI线程, 如果这个线程停在某个函数,UI将会被阻塞,所有其他的界面操作都不能即时响应. 解决方案: 新开一个线程来执行耗时较长的操作,以不阻塞UI.

  7. struts2中的constant介绍之struts.objectFactory与spring的整合

    struts2提供给我们更为灵活的设计,他的很多东西都是可以手动配置的,下面介绍下他的一些 常用的constant作用和配置 struts.objectFactory这个属性用于说明Struts2的 ...

  8. pandas 笔记

    删除: del df["A"]  # 原地修改 df.drop("a")  # 返回修改后的新对象 df.drop(["a", " ...

  9. RTS寻路相关资料收集

    http://www.cocoachina.com/game/20150824/13174.html RVO算法 RVO避开agent

  10. linux 2.6.32.220的一个crash记录

    有同事分析一个crash,我参与了分析,记录如下,供遇到相同crash的兄弟参考: crash> bt PID: TASK: ffff881723ce8080 CPU: COMMAND: &qu ...