欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python连载54-FTP编程

程序员文章站 2022-07-02 12:41:00
一、FTP工作流程 1.客户端链接远程主机上的FTP服务器 2.客户端输入用户名和密码(或者“anonymous”和电子邮件地址) 3.客户端和服务器进行各种文件传输和信息查询操作 4.客户端从远程FTP服务器退出,结束传 二、FTP文件表示 1.分三段表示FTP服务器上的文件 2.HOST:主机地 ......

一、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的国际服务器

 Python连载54-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()

 

 Python连载54-FTP编程

五、源码

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

Python连载54-FTP编程