网络爬虫理论——HTTP协议

HTTP

1.超文本传输协议
2.无状态链接

一.HTTP访问流程

1.网页端输入网站访问

graph LR 客户端--->htpp请求
graph LR 服务端接受反馈--->返回请求数据

二.HTTP请求方式与过程

1.HTTP请求过程

①HTTP客户端端发起请求,创建一个访问服务器的端口(默认80端口)
②HTTP服务器从该端口监听客户端
③接受到请求,服务器向客户端返回状态
e2e1fa3143e6b8b4801a46903ac5aeb3.png

2.HTTP请求与响应

①客户端向服务器发送请求报文 (报文包含:请求方法,URL,协议版本,请求头,请求数据)
②服务器返回一个状态作为响应 (响应包含:协议版本,响应状态,服务器信息,响应头,响应数据)

3.HTTP请求方法**

HTTP/1.1协议中定义了8种方法,以不同方式操作资源

请求方法 方法描述
HEAD 请求指定页面信息,不返回具体内容(元信息或元数据)
GET 请求指定页面信息,返回具体内容(只提供读的权限)
POST 对指定的资源,请求服务器处理
PUT 客户端上传指定资源的最新内容,更新服务指定资源

4.状态码类型

状态码: 表示服务器状态的3位数字代码(HTTP状态码共有67种

状态码类型 状态码意义
1XX 请求已被接受,需要后续处理(临时响应)
2XX 请求被服务器理解与接受
3XX 需要客户端操作才能完成请求,通常用于重定向
4XX 客户端发生错误,妨碍了服务器处理
5XX 表示服务器处理请求时有错误或异常状态发生,或者是服务器当前状态无法1处理

5.头部信息

HTTP的头部信息: 在传输和响应信息中的信息头部分

头部类型 意义
通用头 适应有与客户端与服务端,与内部数据无关,只适合发送信息
请求头 通过精确描述信息,其对象为请求的资源或本身
响应头 为响应信息提供更多信息
实体头 提供关于信息体的描述
c0fd082311720a4f0c833683795210fb.png

Cookie

①Cookie用来解决HTTP无状态的负作用,其本质上是一段文本信息
②为HTTP协议添加了记忆的功能

1.Cookie机制

①客户端请求服务器时,服务器在响应时发送Cookie信息
②客户端浏览器保留Cookie信息,再次访问服务器时会同时发送Cookie信息
③服务器对Cookie信息进行验证,从而判断用户状态

2.Cookie存储方式

①非持久cookie:存储到内存
②持久cookie:存储到硬盘

3.Cookie实现过程

①客户端请求服务:请求页面服务
②服务器相应请求:cookie是复合key=value,服务器会记录,在响应头添加set-cookie
③客户端再请求:客户端存储set-cookie,再请求时会发送包含服务器cookie的信息

posted @ 2020-11-30 17:01  唐某人-python  阅读(129)  评论(0)    收藏  举报