惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Jina AI
Jina AI
Recent Announcements
Recent Announcements
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
月光博客
月光博客
A
About on SuperTechFans
Vercel News
Vercel News
博客园 - 【当耐特】
爱范儿
爱范儿
Blog — PlanetScale
Blog — PlanetScale
阮一峰的网络日志
阮一峰的网络日志
V
V2EX
D
Docker
博客园 - 叶小钗
The Cloudflare Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
H
Help Net Security
I
InfoQ
博客园 - 三生石上(FineUI控件)
博客园 - Franky
Microsoft Azure Blog
Microsoft Azure Blog
The GitHub Blog
The GitHub Blog
大猫的无限游戏
大猫的无限游戏
MongoDB | Blog
MongoDB | Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报

老董笔记

尚硅谷机构在哪?尚硅谷培训怎么样?靠谱吗-互联网IT百科 韩顺平介绍,传智讲师,开办泰牛,入尚硅谷等一系列-互联网IT百科 pandas多重索引标准样式(写入excel有空行)-互联网IT百科 cannot join with no overlapping index names-互联网IT百科 pandas多列变多行(即宽表变长表)melt和stack函数-互联网IT百科 pandas多行转多列(长表变宽表)pivot和unstack-互联网IT百科 Index contains duplicate entries, cannot reshape完美解决-互联网IT百科 single positional indexer is out-of-bounds-互联网IT百科 Can only compare identically-labeled Series objects-互联网IT百科 pandas transform用法详解(多个案例)-互联网IT百科 python四舍五入精确实现-互联网IT百科 pandas的groupby使用apply分组排序-互联网IT百科 index 0 is out of bounds for axis 0 with size 0-互联网IT百科 pandas分组过滤filter函数-互联网IT百科 联想Win10系统如何禁用触摸屏关闭触摸-互联网IT百科 groupby分组计算transform转换返回相同长度序列-互联网IT百科 brooks seo教程python教程,brooks seo教程网盘,布鲁seo资源-互联网IT百科 电脑右键文件夹一直转圈电卡死怎么回事-互联网IT百科 施琪嘉的心理成长课(荐)-互联网IT百科 百度SEO公司_SEO推广公司哪家好_SEO外包服务如何选-老董笔记 groupby后agg同1列用多个聚合函数、不同列用不同函数、自定义函数-互联网IT百科 pandas的groupby单列多列分组聚合运算-互联网IT百科 DataFrameGroupBy对象及分组个数、分组大小、组名索引、组数据详解-互联网IT百科 pandas中groupby之Grouper and axis must be same length-互联网IT百科 pandas中groupby的分组原理-互联网IT百科 pandas的groupby的使用详解大全-互联网IT百科 openpyxl单元格自动换行强制换行Alignment(wrapText=True)-互联网IT百科 python教程全套(可就业)-互联网IT百科 联想win10系统CPU显示100%,电脑呼呼响怎么回事-互联网IT百科 如何自制CPU,CPU原理是怎么样的?-互联网IT百科
http和https协议讲解-通俗而透彻-互联网IT百科
2020-04-06 · via 老董笔记

  在两条电脑可以通信的基础上,不同的协议就是代表两者之间不同的话术。http和https协议是搞爬虫接触比较频繁的协议。https相比http多了一层加密算法使得数据传输更加安全。

  浏览器打开一个网址其实就是发http/https请求给网页服务器,服务器返回页面给浏览器。爬虫要做的就是代替浏览器发请求并接受传输来的页面数据!


  http/https请求都包含请求行、请求头部、空行、请求数据四部分,http/https响应包含状态行、消息报头、空行、响应正文四部分!一个典型的HTTP示例:


  请求头和响应头使我们研究的重点。我们在浏览器上点击右键审查元素或者按f12,用浏览器访问www.python66.com这个网址就可以抓到http/https网络数据包,图示如下:

  

请求头(Requests Header):


  

响应头(Response Headers):


  

响应内容(Response):

  常见的请求头信息

  accept:浏览器通过这个头告诉服务器,它所支持的数据类型

  Accept-Charset: 浏览器通过这个头告诉服务器,它支持哪种字符集

  Accept-Encoding:浏览器通过这个头告诉服务器,支持的压缩格式

  Accept-Language:浏览器通过这个头告诉服务器,它的语言环境

  Host:浏览器通过这个头告诉服务器,想访问哪台主机

  If-Modified-Since: 浏览器通过这个头告诉服务器,缓存数据的时间

  Referer:浏览器通过这个头告诉服务器,客户机是哪个页面来的 防盗链

  Connection:浏览器通过这个头告诉服务器,请求完后是断开链接还是何持链接

  X-Requested-With: XMLHttpRequest 代表通过ajax方式进行访问

  User-Agent:请求载体的身份标识

  常见的响应头信息

  Location: 服务器通过这个头,来告诉浏览器跳到哪里

  Server:服务器通过这个头,告诉浏览器服务器的型号

  Content-Encoding:服务器通过这个头,告诉浏览器,数据的压缩格式

  Content-Length: 服务器通过这个头,告诉浏览器回送数据的长度

  Content-Language: 服务器通过这个头,告诉浏览器语言环境

  Content-Type:服务器通过这个头,告诉浏览器回送数据的类型

  Refresh:服务器通过这个头,告诉浏览器定时刷新

  Content-Disposition: 服务器通过这个头,告诉浏览器以下载方式打数据

  Transfer-Encoding:服务器通过这个头,告诉浏览器数据是以分块方式回送的

  Expires: -1 控制浏览器不要缓存

  Cache-Control: no-cache

  Pragma: no-cache

  http/https请求方式:

  上文我们打开www.python66.com其实是get请求,get和post(提交表单数据)是http请求的两种常用方式,但是http不限于这两种方式,还有其他诸如put、delete等方式,具体如下:

GET 请求指定的页面信息,并返回实体主体。
HEAD 类似于get请求,只不过只获取响应头。
POST 向指定资源提交数据进行处理请求(例如提交表单或者上传文件),数据被包含在请求体中。
PUT 从客户端向服务器传送的数据取代指定的文档的内容。
DELETE 请求服务器删除指定的页面。
CONNECT HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。
OPTIONS 允许客户端查看服务器的性能。
TRACE 回显服务器收到的请求,主要用于测试或诊断。

  http/https响应状态码

  响应状态代码有三位数字组成,第一个数字定义了响应的类别,且有五种可能取值。

  常见状态码:

  100~199:表示服务器成功接收部分请求,要求客户端继续提交其余请求才能完成整个处理过程。

  200~299:表示服务器成功接收请求并已完成整个处理过程。常用200(OK 请求成功)。

  300~399:为完成请求,客户需进一步细化请求。例如:请求的资源已经移动一个新地址、常用302(所请求的页面已经临时转移至新的url)、307和304(使用缓存资源)。

  400~499:客户端的请求有错误,常用404(服务器无法找到被请求的页面)、403(服务器拒绝访问,权限不够)。

  500~599:服务器端出现错误,常用500(请求未完成。服务器遇到不可预知的情况)。

  

补充https图示:

很赞哦!

python编程网提示:转载请注明来源www.python66.com。
有宝贵意见可添加站长微信(底部),获取技术资料请到公众号(底部)。同行交流请加群 python学习会