zoukankan      html  css  js  c++  java
  • Python连载54-FTP编程

    一、FTP工作流程

    1.客户端链接远程主机上的FTP服务器

    2.客户端输入用户名和密码(或者“anonymous”和电子邮件地址)

    3.客户端和服务器进行各种文件传输和信息查询操作

    4.客户端从远程FTP服务器退出,结束传

    二、FTP文件表示

    1.分三段表示FTP服务器上的文件

    2.HOST:主机地址,类似于ftp.mozilla.org,以ftp开头

    3.DIR:目录,表示文件所在本地的地址,例如:pub/andorid/focus/1.1

    4.File:文件名称,例如:Klar-1.1-RC1.apk

    如果想要完整精确的表示ftp上某一个文件,需要上述三个部分组合在一起

    三、网址:http://ftp.mozilla.org/

    这是一个ftp的国际服务器

     

    四、举例

     
    
    import ftplib
    
    import os
    
    import  socket
    
    ​
    
    #三部分精确表示ftp服务器上的某一个文件
    
    #好多公开ftp服务器访问会出错或者没有反应
    
    HOST = "ftp.acc.umu.se"
    
    DIR = "Public/EFLIB"
    
    FILE = "README"#1.客户端连接远程主机上的ftp服务器
    
    try:
    
        f = ftplib.FTP()#建立一个FTP对象
    
        #通过设置调试级别可以方便调试
    
        f.set_debuglevel(2)
    
        #链接主机地址
    
        f.connect(HOST)
    
    except Exception as e:
    
        print(e)
    
        exit()
    
    ​
    
    print("***Connected to host {0}".format(HOST))
    
    ​
    
    try:
    
        #登录如果没有输入用户信息,则默认使用匿名登录
    
        f.cwd(DIR)#更换目录
    
    except Exception as e:
    
        print(e)
    
        exit()
    
    print("*** Changed dir to {0}".format(DIR))
    
    ​
    
    try:
    
        #从FTP服务器上下载文件
    
        #第一个参数是ftp命令
    
        #第二个参数是回调函数
    
        #此函数的意思是,执行RETR命令,下载文件到本地之后,运行回调函数
    
        f.retrbinary("RETR {0}".format(FILE),open(FILE,"wb").write)
    
    except Exception as e:
    
        print(e)
    
        exit()
    
    ​
    
    #4.客户端从远程FTP服务器退出,结束传输
    
    f.quit()

     

    五、源码

    D33_6_FtpExample.py

    https://github.com/ruigege66/Python_learning/blob/master/D33_6_FtpExample.py

    2.CSDN:https://blog.csdn.net/weixin_44630050(心悦君兮君不知-睿)

    3.博客园:https://www.cnblogs.com/ruigege0000/

    4.欢迎关注微信公众号:傅里叶变换,个人公众号,仅用于学习交流,后台回复”礼包“,获取大数据学习资料

  • 相关阅读:
    使用libmap
    仿真 vcs/ncverilog
    git——git不常见指令记录
    Mac更换鼠标指针样式_ANI、CUR文件解析
    油猴脚本——CSDN防复制破解
    解决Establishing SSL connection without server‘s identity verification is not recommended.
    IDEA激活 试用30天 自动激活
    IDEA Plugins:Free Mybatis plugin(Mapper跳转XML)安装及使用
    Springboot异常汇总
    springbootdemo
  • 原文地址:https://www.cnblogs.com/ruigege0000/p/11946497.html
Copyright © 2011-2022 走看看