背景:需要对ftp进行操作,涉及上传和下载操作
 
  1. from ftplib import FTP
  2.  
  3. ftp = FTP(host=“ftphostname",user=‘登录用户名', passwd='登录密码') # 连接到ftp
  4.  
  5. ftp.set_debuglevel(2) # 打开调试级别2,显示详细信息
  6.  
  7. def download(filename,bufsize=1024):# bufsize设置的缓冲区大小
  8. file_handle = open(filename, "wb").write # 以写模式在本地打开文件
  9. ftp.retrbinary("RETR %s"%filename, file_handle, bufsize) # 接收服务器上文件并写入本地文件
  10.  
  11. def upload(filename,bufsize=1024):
  12. file_handle2 = open(filename, "rb") # 以只读模式打开本地文件
       filename = filename.split("/")[-1 #有可能上传路径,所以处理一下
  13. ftp.storbinary('STOR %s'%filename, file_handle2, bufsize)#上传本地filename到服务器,filename为上传到服务器上后显示的名字,第二个参数为上传的本地文件
  14.  
  15. ftp.getwelcome() # 打印出欢迎信息
  16. ftp.cwd('目录名') # 进入远程目录
  17. ftp.rmd(‘目录名') # 在ftp上删除目录
  18. ftp.mkd('目录名') # 在ftp上创建目录
  19. ftp.pwd() # 打印当前ftp目录
  20. ftp.dir() # 打印ftp上当前目录下的所有文件
  21.  
  22. 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. python ftp文件夹文件递归上传推送

  2. 如何安装Exchange2010上安装更新汇总(Update Rollup)

    原文链接:http://blog.51cto.com/zhengyu213/516729 更新汇总安装方式: 1. Windows update 通过自动更新服务安装Exchange更新汇总补丁.但E ...

  3. 白鹭引擎 - 碰撞检测 ( hitTestPoint )

    1, 矩形碰撞检测 class Main extends egret.DisplayObjectContainer { /** * Main 类构造器, 初始化的时候自动执行, ( 子类的构造函数必须 ...

  4. uri,url和urn的区别以及URLEncoder

    java.net.URL类不提供对标准RFC2396规定的特殊字符的转义,因此需要调用者自己对URL各组成部分进行encode.而java.net.URI则会提供转义功能.因此The recommen ...

  5. leetcode295

    public class MedianFinder { List<int> list = null; ; /** initialize your data structure here. ...

  6. [转]使用STM32CubeMX:USB大容量存储设备

    原文地址http://qiita.com/mt08/items/fcc925fa47726bfc6c74 概要 STM32CubeMXを使って.USB MassStorageを使ってみる. USBを使 ...

  7. Centos6与Centos7防火墙设置与端口开放的方法

    Centos升级到7之后,内置的防火墙已经从iptables变成了firewalld.所以,端口的开启还是要从两种情况来说明的,即iptables和firewalld.更多关于CentOs防火墙的最新 ...

  8. css:长度距离的一个计算函数calc

    .calc-example{ width: calc(100% - 100px);} 可用于宽度,高度,margin,padding等长度或距离的计算 减号两边必须留一个空格

  9. 如何查看一个class文件是否正确

    今天碰到了个问题,左思右想就是找不出问题,试验多个路径来解决问题,错误依旧. 然后我拿到了现场的包,一个很大的问题让我忽略了,这个class文件用反编译程序打不开(jd-gui.exe),非常神奇,但 ...

  10. [ SHELL编程 ] 远程服务器传输文件

    在shell编程中经常需要获取远程服务器文件.手工操作中使用scp命令完成.为避免脚本执行scp输入密码进行交互,需先建立本机服务器当前用户和远程服务器指定用户的信任关系.具体代码见操作实例,重点关注 ...