根据前面对网络分层棋型的介绍,我们知道实际的网络模型大致分为四层,这四层各有对应的网络协议提供支持,
网络层协议主要是 IP,它是所有互联网协议的基础,其中 ICMP(Internet Control Message Protocol)、IGMP(Internet Group Manage Protocol)、ARP(Address Resolution Protocol)、RARP(Reverse Address Resolution Protocol)等协议都可认为是 IP 协议族的子协议。通常来说,很少会直接基于网络层进行应用程序编程。
传输层协议主要是 TCP 和 UDP,Python 提供了 socket 等模块针对传输层协议进行编程。
应用层协议就更多了,正如图 1 所示的,FTP、HTTP、TELNET 等协议都属于应用层协议,Python 同样为基于应用层协议的编程提供了丰富的支持。
虽然 Python 自带的标准库已经提供了很多与网络有关的模块,但如果在使用时觉得不够方便,则不要忘记了 Python 的优势,即大量的第三方模块随时可用于增强 Python 的功能。
表 2 显示了 Python 标准库中的网络相关模块。
模块 | 描述 |
---|---|
socket | 基于传输层 TCP、UDP 协议进行网络编程的模块 |
asyncore | socket 模块的异步版,支持基于传输层协议的异步通信 |
asynchat | asyncore 的增强版 |
cgi | 基本的 CGI(Common Gateway Interface,早期开发动态网站的技术)支持 |
E-mail 和 MLME 消息处理模块 | |
ftplib | 支持 FTP 协议的客户端模块 |
httplib、http.client | 支持 HTTP 协议以及 HTTP 客户揣的模块 |
imaplib | 支持 IMAP4 协议的客户端模块 |
mailbox | 操作不同格式邮箱的模块 |
mailcap | 支持 Mailcap 文件处理的模块 |
nntplib | 支持 NTTP 协议的客户端模块 |
smtplib | 支持 SMTP 协议(发送邮件)的客户端模块 |
poplib | 支持 POP3 协议的客户端模块 |
telnetlib | 支持TELNET 协议的客户端模块 |
urllib及其子模块 | 支持URL 处理的模块 |
xmlrpc、xmlrpc.server、xmlrpc.client | 支持XML-RPC协议的服务器端和客户端模块 |
文章名称:创新互联Python教程:详细介绍Python网络编程模块
转载源于:http://www.shufengxianlan.com/qtweb/news48/370698.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联