本文主要是介绍Python 学习 第二册 第14章 网络编程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
----用教授的方式学习
目录
14.1 几个网络模块
14.1.1 模块 socket
14.1.2 模块 urllib 和 urllib2
14.1.3 其他模块
14.2 SocketServer 及相关的类
14.3.1 使用 SocketServer 实现分叉和线程化
14.3.2 使用 select 和 poll 实现异步 I/O
14.4 Twisted
14.4.1 下载并安装 Twisted
14.4.2 编写 Twisted 服务器
14.1 几个网络模块
14.1.1 模块 socket
网络编程中的一个基本组件是套接字(socket)。套接字基本上是一个信息通道,两端各有一个程序。
套接字分为两类:服务器套接字和客户端套接字。创建服务器套接字后,让它等待连接请求的到来。
使用举例:
最简单的服务器
import socket
s = socket.socket()
host = socket.gethostname()
port = 1234
s.bind((host, port))
s.listen(5)
while True: c, addr = s.accept() print('Got connection from', addr) c.send('Thank you for connecting')c.close()
最简单的客户端
import socket
s = socket.socket()
host = socket.gethostname()
port = 1234
s.connect((host, port))
print(s.recv(1024))
14.1.2 模块 urllib 和 urllib2
1. 打开远程文件
几乎可以像打开本地文件一样打开远程文件,差别是只能使用读取模式,以及使用模块urllib.request中的函数urlopen,而不是open(或file)。
>>> from urllib.request import urlopen >>> webpage = urlopen('http://www.python.org') |
2. 获取远程文件
函数urlopen返回一个类似于文件的对象,可从中读取数据。如果要让urllib替你下载文件,并将其副本存储在一个本地文件中,可使用urlretrieve。
urlretrieve('http://www.python.org', 'C:\\python_webpage.html') |
14.1.3 其他模块
标准库中一些与网络相关的模块
模 块 | 描 述 |
asynchat | 包含补充asyncore的功能 |
asyncore | 异步套接字处理程序 |
cgi | 基本的CGI支持 |
Cookie | Cookie对象操作,主要用于服务器 |
cookielib | 客户端Cookie支持 |
| 电子邮件(包括MIME)支持 |
ftplib | FTP客户端模块 |
这篇关于Python 学习 第二册 第14章 网络编程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!