放荡的人生|一节课教你用 python 搞定图片爬虫( 二 )


1.1 新增了五种请求方法:OPTIONS , PUT , DELETE , TRACE 和 CONNECT 方法 。
放荡的人生|一节课教你用 python 搞定图片爬虫最常用的请求方法是 get 和 post 。

  • get
简单来说 , GET 方法一般用来获取数据 , 或者将一些简短的数据放到 URL 参数中传递到服务器 。 比 POST 更加高效和方便 。
  • post
由于 GET 方法最多在 url 中携带 1024 字节数据 , 且将数据放到 URL 中传递太不安全 , 数据量大时 URL 也会变得冗长 。 所以传递数据量大或者安全性要求高的数据的时候 , 最好使用 POST 方法来传递数据 。
请求头
请求行下方则是请求报头 , 每个报头的形式如下:
报头名 + : + 值
常见请求头和作用如下:
放荡的人生|一节课教你用 python 搞定图片爬虫
放荡的人生|一节课教你用 python 搞定图片爬虫请求数据
请求数据通常是使用 POST 方法进行发送的 , GET 方法是没有请求数据的 。
请求数据跟上面的消息报头由一个空行隔开 。
讲到这里 , 我们可以看出所谓的协议就是数据的统一组织格式 。
HTTP响应一个完整的 HTTP 响应报文也由四个部分组成 , 分别是:状态行 , 消息报头 , 空行和响应正文 。
放荡的人生|一节课教你用 python 搞定图片爬虫响应状态码
当客户端向服务端发起一次请求后 , 服务端在返回的响应头中会包含一个 HTTP 状态码 。
HTTP 的状态码是由三位数字来表示的 , 由第一位数字来表示状态码的类型 , 一般来说有五种类型:
放荡的人生|一节课教你用 python 搞定图片爬虫响应报头
状态行下方的就是响应报头 。 常见响应报头如下:
放荡的人生|一节课教你用 python 搞定图片爬虫可以把一个 http 事务比作通过暗号打电话 , 客户端向服务端打电话接通后客户端先说话 , 服务端根据客户端的暗号选择回复内容 。
http 协议有一些特点:
1、HTTP 是无连接的:无连接的含义是限制每次连接只处理一个请求 。 服务器处理完客户的请求 , 并收到客户的应答后 , 即断开连接 。 采用这种方式可以节省传输时间 。
2、HTTP 是媒体独立的:这意味着 , 只要客户端和服务器知道如何处理的数据内容 , 任何类型的数据都可以通过 HTTP 发送 。 客户端以及服务器指定使用适合的 MIME-type 内容类型 。
3、HTTP 是无状态:HTTP 协议是无状态协议 。 无状态是指协议对于事务处理没有记忆能力 。 缺少状态意味着如果后续处理需要前面的信息 , 则它必须重传 , 这样可能导致每次连接传送的数据量增大 。 另一方面 , 在服务器不需要先前信息时它的应答就较快 。
浏览器的工作原理讲完 HTTP 协议之后 , 我们首先来简单了解一下浏览器的工作原理 。
浏览器访问一个页面的流程如下:
1、在地址栏中键入网页的网址
2、浏览器会向这个网址所指向的服务器发起一个 http 请求
3、浏览器接受服务器返回的 http 响应
4、浏览器从上往下解析渲染响应回来的 HTML 文档


推荐阅读