HTTP基本原理
URI:Uniform Resource Identifiter,统一资源标志符
URL:Universal Resource Locator,统一资源定位符
URL是URI的子集。
HTTP:Hyper Text Transfer Protocol,超文本传输协议
HTTPS:Hyper Text Transfer Protocol over Secure Socket Layer ,HTTP下加入SSL层
Name:请求的名称, 一般会将URL的最后一部分内容当做名称。
Status:响应的状态码。
Type:请求的文档类型。
Initiator:请求源,用来标记请求是由哪个对象或进程发起的。
Size:从服务器下载的文件和请求的资源大小。如果是从缓存中取得的资源,则该列表会显示from cache。
Time:发起请求到获取响应所用的总时间。
Waterfall:网络请求的可视化瀑布流。
请求
- 请求方法(Request Method)
方法 | 描述 |
---|---|
GET | 请求页面,并返回页面内容(常见) |
POST | 大多用于提交表单或上传文件,数据包含在请求体中(常见) |
HEAD | 类似于GET请求,只不过返回的响应中没有具体的内容,用于获取报头 |
PUT | 从客户端向服务器传送的数据取代指定文档的内容 |
DELETE | 请求服务器删除指定的页面 |
CONNECT | 把服务器当作跳板,让服务器代替客户端访问其他页面 |
OPTIONS | 允许客户端查看服务器的性能 |
TRACE | 回显服务器收到的请求,主要用于测试或诊断 |
请求的网址(Request URL)
请求的网址,即统一资源定位符URL
请求头(Request Headers)
请求头,用来说明服务器要使用的附加信息。
Accept:请求报头域,用于指定客户端可接受哪些类型的信息; Accept-Language:指定客户端可接受的语言类型; Accep-Encoding:指定客户端可接受的内容编码; Host:用于指定请求资源的主机IP和端口号,其内容为请求URL的原始服务器或网关的位置。从HTTP 1.1版本开始,请求必须包含此内容。 Cookie:或Cookies,网站为了辨别用户进行会话跟踪而存错在用户本地的数据。功能为维持当前访问会话。 Referer:标识这个请求是从哪个页面发过来的。 User-Agent:使服务器识别客户使用的操作系统及版本、浏览器及版本等信息。 Content-Type:也叫互联网媒体类型(Internet Media Type)或者MIME类型,在HTTP协议消息头中,用来表示具体请求中的媒体类型信息。如:text/html代表HTML格式,image/gif代表GIF图片, application/json代表JSON类型。
请求体(Request Body)
请求体一般承载的内容是POST请求中的表单数据,而对于GET请求,请求体则为空。
Content-Type | POST提交数据的方式 |
---|---|
application/x-www-form-urlencoded | 表单数据 |
multipart/form-data | 表单文件上传 |
application/json | 序列化JSON数据 |
text/xml | XML数据 |
响应
响应状态码(Response Status Code)
服务器的响应状态,如200为服务器正常响应,404为页面未找到,500为服务器内部发生错误等
响应头(Response Headers)
包含了服务器对请求的应答信息。
Date:标识响应产生的时间。
Last-Modified:指定资源的最后修改时间。
Content-Encoding:指定响应内容的编码。
Server:包含服务器的信息,比如名称、版本号等。
Content-Type:文档类型,指定返回的数据类型。
Set-Cookie:设置Cookies。
Expires:指定响应的过期时间。
响应体(Response Body)
在浏览器开发者工具中点击Response,查看网页源代码,也就是响应体的内容。
网页基础
网页可以分为三大部分——HTML、CSS和JavaScript。
在HTML中,只需要用link标签即可引入写好的CSS文件。
JavaScript在HTML中通过script标签引入。
一个网页的标准形式是html标签内嵌套head和body标签,head内定义网页配置和引用,body内定义网页正文。
本文内容为《Python3网络爬虫开发实战》 的学习笔记。