Python 计算机网络基础知识

Python 计算机网络基础知识前言 在我们日常生活中,网络是随处可见,不管我们使用的手机还是电脑,都离不开网络的支持。网络连接我们通往全球各个各地,缩短人与人之间的距离,随时畅享在网络信息的海洋里。 我们不仅仅使用网络我们带来的便

Python 计算机网络基础知识

小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。

本文已参与 「掘力星计划」 ,赢取创作大礼包,挑战创作激励金。

前言

在我们日常生活中,网络是随处可见,不管我们使用的手机还是电脑,都离不开网络的支持。网络连接我们通往全球各个各地,缩短人与人之间的距离,随时畅享在网络信息的海洋里。

我们不仅仅使用网络我们带来的便捷,我们也要思考一下如下问题:

网络是怎么工作的?

接下来,我们要来学习计算机网络基础相关的知识吧,Let’s go~

Python网络库

Python 作为高级语言之一,也支持对网络编程相关的模块。

  • Python内置库提供了urllib、request模块
  • Python 还支持第三块模块:selenium、aiohttp、phantomjs

Python 计算机网络基础知识

TCP/IP网络模型

👉 OSI七层模型

名称 说明
应用层 为网络程序提供网络服务的接口
表示层 将上层数据或者信息进行变换,保证应用程序能理解
会话层 负责建立、管理、终止进程之间的会话
传输层 负责将上层数据分段提供端到端的传输,代表设备网关
网络层 负责对子网间的数据包进行路由选择,代表设备路由器
数据链路层 将网络层的数据进行打包,或者将物理层数据进行解析传给网络层。代表设备交换机
物理层 将数据解析传给数据链路层,或者将数据链路层传的数据进行打包传给硬件设备进行传输。代表设备网卡、集线器

👉TCP/IP网络模型有四层:

名称 协议
应用层 SMTP、FTP、DNS、SNMP、NFS、HTTP、TELNET
传输层 TCP、UDP
网络层 ICMP、IGMP、IP、ARP、RARP
网络接口层 LAN、WAN、MAN

URL

👉 URL(Uniform Resource Locator)对象代表统一资源定位器。

Python 计算机网络基础知识

网页请求方式

👉在网络请求过程中主要分为Request和Response

  • Request:请求向服务器放送请求访问
  • Response:服务器接收到客户端的请求后,服务器会验证请求的有效,通过请求的内容查询后返回给客户端。

Python 计算机网络基础知识

💡 网络请求方为GET和POST

  • GET:最常见的请求方式,传输的数据显示在URL中,且对数据传输大小有限制
  • POST:URL不显示传输的数据,,以表单形式进行传参,可以进行查询和修改信息

🔔GET和POST重点说明

  1. GET和POST 网络层都是使用的TCP协议
  2. GET在网络请求中只产生一个TCP包,POST则在整个网络中产生2个TCP包 GET在一次请求中,把HEADER和数据一次性传给服务器,POST则先传输HEADER给服务器,服务器返回给100后,则继续发送数据给服务器,返回200。

HTTP和HTTPS

HTTP:超文本传输协议,属于应用层协议,常用于web浏览器和服务器之间传递信息

HTTPS:超文本传输安全协议,通过使用SSL/TSL加密技术和HTTP协议结合进行网络数据安全传输

HTTP和HTTPS区别:

  1. HTTP协议默认TCP协议端口是80,HTTPS协议则是TCP协议443端口
  2. HTTP协议传输是明文传输的,HTTPS协议传输之前需要SLL对数据进行加密
  3. HTTP协议页面响应比HTTPS快,HTTP协议需要3个TCP包,HTTPS传输数据需要12个TCP包

HTTP状态码

状态码 说明
2XX 成功
200 请求成功
201 紧接POST命令
202 已接收用于处理,但处理未完成
203 返回部分信息
204 无响应,已接收到请求,但不存在要返回的信息
3xx 重定向
300 Multiple Choices 客户请求的文档可以在多个位置找到
301 已移动 — 请求的数据具有新的位置且更改是永久的
302 已找到 — 请求的数据临时具有不同 URL。
304 未修改 — 未按预期修改文档。
4xx 客户机中出现的错误
400 错误请求 — 请求中有语法问题
401 未授权 — 未授权客户机访问数据
403 禁止 — 即使有授权也不需要访问
5xx 服务器中出现的错误
500 内部错误 — 因为意外情况,服务器不能完成请求
502 错误网关 — 服务器接收到来自上游服务器的无效响应
505 不支持HTTP版本

常用工具

我们在进行调试过程中通常使用最多的是Postman

Postman 工具非常强大,不仅可以模拟各个协议的接口请求,还支持批量触发等脚本运行

Postman 官网文档教程

Python 计算机网络基础知识

总结

本期,我们主要了解Python支持网络编程的相关的模块,以及对计算网络相关的基础知识进行学习

接下来我们会陆续开始学习Python网络编程相关模块方法的学习

以上是本期内容,欢迎大佬们点赞评论,下期见~

今天的文章Python 计算机网络基础知识分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/16069.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注