一文读懂:HTTP如何进化为更安全的HTTPS协议

目前大部分网站是基于HTTPHTTPS进行网络交互的,在爬虫程序中也是发送网络协议来获取对应的网站信息,所以还是有必要了解网络协议。

HTTPHTTPS相关概念

  • HTTP
    • 超文本传输协议
    • 默认端口号:80

  • HTTPS
    • HTTP + SSL(安全套接字层),即带有安全套接字层的超本文传输协议
    • 默认端口号:443

HTTPSHTTP更安全,但是性能更低。

理解HTTP协议

HTTP协议使用了TCP协议,接下来我们使用网络调试助手软件发送HTTP协议并携带hello world数据到浏览器。

软件下载地址:NetAssist(网络调试助手)官方下载_NetAssist(网络调试助手)最新版v4.3.25免费下载_3DM软件

操作步骤:

  1. 设置网络调试助手为TCP Server
  2. 浏览器链接网络调试助手
  3. 发送HTTP协议到浏览器并携带数据
  4. 断开连接,浏览器显示相应内容

HTTP协议的重要信息

在以上案例中,我们想要给浏览器发送信息并显示,就必须要带上HTTP协议。HTTP协议中有一部分数据对爬虫程序来说非常重要。分别是请求头与响应头。

常见的请求头参数

  1. Host (主机和端口号)
  2. Connection (链接类型)
  3. Upgrade-Insecure-Requests (升级为HTTPS请求)
  4. User-Agent(浏览器名称)
  5. Accept (传输文件类型)
  6. Referer (页面跳转处)
  7. Accept-Encoding(文件编解码格式)
  8. CookieCookie信息)
  9. x-requested-with :XMLHttpRequest (表示该请求是Ajax异步请求)

响应头参数

Set-Cookie (对方服务器设置cookie到用户浏览器的缓存)

响应状态码

  • 200:成功
  • 302:临时转移至新的url(一般会用GET,例如原本是POST则新的请求则是GET)
  • 307:临时转移至新的url(原本是POST则新的请求依然是POST)
  • 403:无请求权限
  • 404:找不到该页面
  • 500:服务器内部错误
  • 503:服务不可用,一般是被反爬

浏览器发送HTTP请求过程

  1. 客户端发送网站域名到DNS服务器
  2. DNS服务器返回IP地址到客户端
  3. 客户端根据返回的IP地址访问网站后端服务器并请求网站资源
  4. 网站后端服务器返回对应页面资源

rebots协议

网站通过Robots协议告诉搜索引擎哪些页面可以抓取,哪些页面不能抓取,但它仅仅是互联网中的约定而已,可以不用遵守。例如:https://www.taobao.com/robots.txt

在后期的Scrapy框架学习中,需要手动关闭Robots协议,现阶段了解即可。

谷歌浏览器插件

  • XPath Helper
  • Web Scraper
  • Toggle JavaScript
  • User-Agent Switcher for Chrome
  • EditThisCookie
  • SwitchySharp

插件下载地址:

  1. https://extfans.com/
  2. 极简插件官网_Chrome插件下载_Chrome浏览器应用商店

请求测试软件

PostManDownload Postman | Get Started for Free

ApiPost下载中心-Apipost-中文版接口调试与文档管理工具

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值