基本网络知识

1.TCP/IP

  • TCP/IP是非常重要的协议,由IP和TCP两个协议构成。
  • IP(internet protocol)是一种低级的路由协议,无法保证所有包都抵达目的地,也不能保证包都按顺序抵达。
  • TCP 能够保证数据包安全的按照发送时的顺序送达目的地。

2.IP地址

每台计算机都必须有一个与众不同的标识,即为IP地址。TCP/IP使用IP地址来识别源地址和目的地地址。

如今的IP地址有IPv4 和IPv6
IP v4 由4个不同的八位二进制数构成。

3.端口

  • 每台计算机拥有很多网络通信程序在运行,提供网络服务或者进行通信,这就需要不同的端口进行通信
  • 如果把IP地址比作电话号码,那么端口就是分机号码,在进行网络通信时不仅要指定IP地址,还要指定端口号

4.HTTP/HTTPS

  • HTTP 是无连接协议,即在每一次请求时都建立连接,服务器在处理完客户端的请求后,会先应答客户端,然后断开连接,不会一直占用网络资源。
  • HTTP /1.1共定义了8种请求方法: OPTIONS 、 HEAD 、 GET 、 POST 、 PUT 、 DELETE 、 TRACE 和 CONNECT 。
  • HTTPS 与 HTTP 的区别是: HTTPS 使用 https://代替http://, HTTPS使用端口443,而 HTTP 使用端口80与 TCP / IP 通信。

HTTPS 为加密 较为安全

方法1:get

  • GET 方法:用于向指定的资源发出请求,被发送的信息"显式"地跟在 URL 后面。
  • 它一般只用于读取数据,例如静态图片等。
  • GET 方法有点像使用明信片给别人写信,将"信的内容"写在外面,接触到的人都可以看到,因此是不安全的。

方法2:post

  • POST 方法:用于向指定的资 源提交数据,请求服务器进行处理,例如提交表单或者上传文件等。数据被包含在请求体中。
  • POST 方法像是把"信的内容"装入信封中,接触到该
    信封的人都看不到信的内容因此是相对安全的。

搭建web网站

采用Java和tomcat进行网络搭建

urllib.request 模块

在python中访问互联网资源,可以使用官方内置的urllib.request 模块。

1.发送GET请求

若要发送HTTP/HTTPS的GET请求,则可以使用urllib.request 模块中的Request对象。

Python trdp协议_网络

2.发送POST请求

若要发送HTTP/HTTPS协议的POST请求, 则其发送流程与发送GET请求非常类似。

Python trdp协议_python_02

其中encode 为编码 ;decode为解码

with urllib.request.urlopen(req) as response:
 	data = response.read()
 	json_data  = data.decode()
 	prnt(json_data )

使用with代码块 打开网络请求返回response对象
然后读取对象 在进行解码

4.JSON数据

JSON数据(JavasScript OBject Nonation)数据格式

服务器返回对象

{“CDate”:“2018-12-30”,“Comtent”, “发布python9”,UserID".“tony”,“ID”:10}
键值对应

4.1.JSON 文档结构
  • JSON对象
  • JSON数组
4.2.JSON数据解码
  • JSON 数据的解码( decode )指将 JSON 数据转换为 Python 数据,当从网络中接收或从磁盘中读取 JSON 数据时,需要将其解码为 Python 数据。
  • json 模块提供的 loads ( str )函数进行 JSON 数据的解码,参数 str 是 JSON 字符串,返回 Python 数据。

Python trdp协议_网络_03


代码如下:

Python trdp协议_python_04