Python核心编程(第3版)-客户端FTP程序示例

简介:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
cat getLatestFTP.py
#!/usr/bin/python
import  ftplib
import  os
import  socket
HOST  =  'ftp.mozilla.org'
DIRN  =  'pub/mozilla.org/webtools'
FILE  =  'bugzilla-LATEST.tar.gz'
def  main():
     try :
         =  ftplib.FTP(HOST)
     except  (socket.error,socket.gaierror) as e:
         print  'ERROR:cannot reach "%s"'  %  HOST
         return
     print  '*** Connected to host "%s"'  %  HOST
     try :
         f.login( 'web2' , 'passwd' )
     except  ftplib.error_perm:
         print  'ERROR: cannot login anonymously'
         f.quit()
         return
     print  '*** Logged in as "anonymous"'
     try :
         f.cwd(DIRN)
     except  ftplib.error_perm:
         print  'ERROR:cannot CD to "%s"'  %  DIRN
         f.quit()
         return
     print  '*** Changed to  "%s" folder'  %  DIRN
     try :
         f.retrbinary( 'RETR %s'  %  FILE ,
             open ( FILE , 'wb' ).write)
     except  ftplib.error_perm:
         print  'ERROR:cannot read file "%s"'  %  FILE
         if  os.path.exists( FILE ):
             os.unlink( FILE )
         else :
             print  '*** Downloaded "%s" to CWD'  %  FILE
     f.quit()
if  __name__  = =  '__main__' :
     main()

总结:

1,ftp.mozilla.org 已经不能访问了。

2,相关变量根据实际情况修改,HOST,DIRN,FILE。

3,该内容在 《Python核心编程(第3版)》 第79页。




      本文转自独弹古调  51CTO博客,原文链接:http://blog.51cto.com/hunkz/1874384,如需转载请自行联系原作者





相关文章
|
9月前
|
Python
Python编程:运算符详解
本文全面详解Python各类运算符,涵盖算术、比较、逻辑、赋值、位、身份、成员运算符及优先级规则,结合实例代码与运行结果,助你深入掌握Python运算符的使用方法与应用场景。
526 3
|
9月前
|
数据处理 Python
Python编程:类型转换与输入输出
本教程介绍Python中输入输出与类型转换的基础知识,涵盖input()和print()的使用,int()、float()等类型转换方法,并通过综合示例演示数据处理、错误处理及格式化输出,助你掌握核心编程技能。
760 3
|
9月前
|
并行计算 安全 计算机视觉
Python多进程编程:用multiprocessing突破GIL限制
Python中GIL限制多线程性能,尤其在CPU密集型任务中。`multiprocessing`模块通过创建独立进程,绕过GIL,实现真正的并行计算。它支持进程池、队列、管道、共享内存和同步机制,适用于科学计算、图像处理等场景。相比多线程,多进程更适合利用多核优势,虽有较高内存开销,但能显著提升性能。合理使用进程池与通信机制,可最大化效率。
579 3
|
9月前
|
Java 调度 数据库
Python threading模块:多线程编程的实战指南
本文深入讲解Python多线程编程,涵盖threading模块的核心用法:线程创建、生命周期、同步机制(锁、信号量、条件变量)、线程通信(队列)、守护线程与线程池应用。结合实战案例,如多线程下载器,帮助开发者提升程序并发性能,适用于I/O密集型任务处理。
792 0
|
Ubuntu 安全 网络安全
在Ubuntu系统下使用vsftpd配置FTP服务器的步骤
以上就是在Ubuntu系统下使用vsftpd配置FTP服务器的步骤。这些步骤都是基础的,但足够让你建立一个简单的FTP服务器。如果你需要更高级的功能,例如SSL加密、虚拟用户等,你可能需要进一步研究vsftpd的配置选项。
920 13
|
安全 编译器 Linux
深入解析与防范:基于缓冲区溢出的FTP服务器攻击及调用计算器示例
本文深入解析了利用缓冲区溢出漏洞对FTP服务器进行远程攻击的技术,通过分析FreeFlow FTP 1.75版本的漏洞,展示了如何通过构造过长的用户名触发缓冲区溢出并调用计算器(`calc.exe`)。文章详细介绍了攻击原理、关键代码组件及其实现步骤,并提出了有效的防范措施,如输入验证、编译器保护和安全编程语言的选择,以保障系统的安全性。环境搭建基于Windows XP SP3和Kali Linux,使用Metasploit Framework进行攻击演示。请注意,此内容仅用于教育和研究目的。
671 4
|
安全 Ubuntu Linux
在Linux中,如何进行FTP服务器配置?
在Linux中,如何进行FTP服务器配置?
|
网络协议 文件存储 Windows
Windows Server 2019 FTP服务器搭建
Windows Server 2019 FTP服务器搭建
801 0
|
安全 网络协议 网络安全
Windows Server 2003 FTP服务器搭建
Windows Server 2003 FTP服务器搭建
397 0

推荐镜像

更多