根据前面对网络分层棋型的介绍,我们知道实际的网络模型大致分为四层,这四层各有对应的网络协议提供支持,

网络层协议主要是 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 协议进行网络编程的模块

asyncoresocket 模块的异步版,支持基于传输层协议的异步通信

asynchatasyncore 的增强版

cgi基本的 CGI(Common Gateway Interface,早期开发动态网站的技术)支持

emailE-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网络编程模块相关推荐

  1. python or的用法_详细介绍Python中and和or实际用法

    and 和 or 的特殊性质 在Python 中,and 和 or 执行布尔逻辑演算,但是它们并不返回布尔值:而是,返回它们实际进行比较的值之一.下面来看一下实例.>>> 'a' a ...

  2. python位运算符_详细介绍Python语言中的按位运算符

    按位运算符是把数字看作二进制来进行计算的.Python中的按位运算法则如下: 按位与 ( bitwise and of x and y ) & 举例: 5&3 = 1 解释: 101 ...

  3. autosar中com模块_详细介绍AUTOSAR各个模块作用PART1(OS,SYS)

    这片文章中我们详细讲解下每个模块的功能,上图是vector的autosar方案,每个模块的详细介绍后续会有单独文章进行讲解,请关注.以下是各个模块的简介 1.VHSM hardware Securit ...

  4. python语言中运算符号_详细介绍Python语言中的按位运算符

    <从问题到程序:用Python学编程和计算>--2.11 补充材料 本节书摘来自华章计算机<从问题到程序:用Python学编程和计算>一书中的第2章,第2.11节,作者:裘宗燕 ...

  5. python 偏函数_详细介绍Python中的偏函数

    机器学习实战之Logistic回归 本文来自云栖社区官方钉群"Python技术进阶",了解相关信息可以关注"Python技术进阶". 本系列教程特点: 基于&l ...

  6. python链表详细教程_详细介绍python数据结构之链表

    这篇文章主要为大家详细介绍了python数据结构之链表的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 数据结构是计算机科学必须掌握的一门学问,之前很多的教材都是用C语言实现链表,因为c有 ...

  7. python中整型_实例介绍Python中整型

    实例介绍Python中整型 Python中有以下几个基本的数据类型: 整数 int 字符串 str 浮点数 float 集合 set 列表 list 元组 tuple 字典 dict 布尔类型 boo ...

  8. python中len用法_简单介绍Python中的len()函数的使用

    简单介绍Python中的len()函数的使用 函数:len() 1:作用:返回字符串.列表.字典.元组等长度 2:语法:len(str) 3:参数:str:要计算的字符串.列表.字典.元组等 4:返回 ...

  9. python中数据类型大小_详细解析Python中的变量的数据类型

    变量是只不过保留的内存位置用来存储值.这意味着,当创建一个变量,那么它在内存中保留一些空间. 根据一个变量的数据类型,解释器分配内存,并决定如何可以被存储在所保留的内存中.因此,通过分配不同的数据类型 ...

  10. python3 进度条_详细介绍Python进度条tqdm的使用

    前言 有时候在使用Python处理比较耗时操作的时候,为了便于观察处理进度,这时候就需要通过进度条将处理情况进行可视化展示,以便我们能够及时了解情况.这对于第三方库非常丰富的Python来说,想要实现 ...

最新文章

  1. 干货:一文彻底弄懂递归如何解题
  2. 航天智慧物流!智能汽车竞赛—航天赛道开始报名啦!
  3. 里写注释 postman_没用过这些IDEA插件?怪不得写代码头疼
  4. 【实验】综合实验-咔咔咔还是一顿整
  5. CVPR 2020 《Transform and Tell: Entity-Aware News Image Captioning》论文笔记(数据集)
  6. 2019年,最值得期待的科学突破将是?
  7. springboot集成与使用Sentinel
  8. C语言之字符串探究(二):字符串原生操作——strlen、strcat、strcpy、strcmp自实现
  9. 转载:better-scroll的相关api
  10. 「leetcode」763. 划分字母区间:【记录最远位置与双指针】详解
  11. python解析xml选用什么模块_什么是适合Python的XML流解析器?
  12. 基于Python/PYQT5的动物识别专家系统(人工智能实验)
  13. Unity中的文件夹和路径
  14. 【笔记】Telink BDT EVK烧录时错误
  15. 面试官问你的缺点是什么,应该如何回答?
  16. linux设置usb选择性暂停,usb大容量存储设备是什么?USB大容量存储设备无法启动怎么办?...
  17. 国内代理ip的爬取,构建ip代理池@2
  18. 巨斧砍大树-sdut
  19. 另一个小程序 返回的支付结果如何得到_微信小程序商城的开发商家需要注意什么?...
  20. windows11删除此电脑的6个图标,包括视频、图片、文档、下载、音乐、桌面

热门文章

  1. 施一公:如何写好一篇学术论文?
  2. c语言网络套接字讲解,C语言学习笔记-网络与套接字
  3. excel npoi 连接_MVC导出Excel之NPOI简单使用(一)
  4. Java通过http协议下载文件并写入字节流的方法
  5. Win7 桌面右键一直转圈很慢
  6. 大龄程序员的一些出路
  7. 论文 结构图 用 visio
  8. 川大网页多媒体设计【李天翼班】资料整理
  9. 保存网页html 有什么,保存网页时HTML和MHTML区别在哪里
  10. @Autowired实现的原理