爬虫系列目录

1、HTTP协议和抓包工具

文章目录

  • 爬虫系列目录
  • 理解Http协议
    • 常见请求头参数
    • 常见响应状态码
  • Chrome抓包工具的使用

理解Http协议

http: 80
https: 443端口; 在http下增加了SSL层。

URL: 统一资源定位符
1、Scheme
2、host
3、port
4、path
5、query string, 使用&拼接
6、anchor: 锚点,使用#,前端用来做页面定位的,现在一些前后端分离项目,也用锚点做导航。

在浏览器中请求一个url,浏览器会对url进行一个编码。除英文字母,数字和部分符号外,其他的全部使用百分号+十六进制码值进行编码。

常见请求头参数

1、User-Agent: 浏览器名称。如果不设置,就默认为Python,会被反爬虫识别。所以经常设置为一些浏览器的值,来伪装爬虫。
2、Referer 表明当前这个请求是从哪个url过来的。这个一般可以做反爬虫技术,如果不是从指定页面过来的,那么就不做相关的响应。
3、Cookie http协议是无状态的。也就是同一个人发送了两次请求,服务器没有能力知道这两个请求是否来自于同一个人。使用cookie做标识。一般想要做登录后才能访问的网站,就需要发送cookie信息。

常见响应状态码

状态码 注释
200 正常
301 永久重定向
302 临时重定向,比如访问一个需要登录的页面的时候,而此时没有登录,就会重定向到登录页面。
400 请求的url在服务器上找不到,就是请求url错误
403 服务器拒绝访问,权限不够
500 服务器内部错误,可能是服务器出现bug了

Chrome抓包工具的使用

1、Elements
 显示背后的源代码
 可以帮助分析网页结构,获取我们想要的数据。但是呈现是最终网页数据,有时网页数据是通过ajax请求得到的,因此elements的数据不能完全相信。

 可以安装插件测试query结果(插件待补充)

2、Console
  用来打印网页的一些信息。
3、Sources
  网页加载的所有文件:js,css, 图片这些。
  对应的是最开始的网页源代码。

  通过ajax动态添加数据到elements显示的页面中。

4、Network
  可以看到网页发送的所有页面请求。
  XHR: Ajax请求获取到的数据。

Http协议和抓包工具相关推荐

  1. HTTP、HTTPS协议以及抓包工具

    文章目录 前言 一.HTTP 1.HTTP是什么? 2.HTTP工作过程 3.HTTP协议格式 (1)HTTP请求(request) URL 方法(method):最主要的有get/post 报头(h ...

  2. HTTP协议和抓包工具Fiddler

    HTTP,Fiddler 1.HTTP是什么 2.HTTP协议与客户端和服务器 3.HTTP协议的报文格式 1.抓包工具 2.HTTP报文格式 1.HTTP请求的报文格式 2.HTTP响应的报文格式 ...

  3. “软件测试工程师”面试复习之《HTTP协议及抓包工具Fiddler》

    供面试复习使用,内容主要来自<HTTP抓包实战 作者:肖佳>和<图解HTTP 作者:日本上野宣> 关于HTTP协议 一.web网页是如何显示出来的? 1.打开浏览器,输入url ...

  4. MySQL抓包工具:MySQL Sniffer

    简介 MySQL Sniffer 是一个基于 MySQL 协议的抓包工具,实时抓取 MySQLServer 端的请求,并格式化输出.输出内容包访问括时间.访问用户.来源 IP.访问 Database. ...

  5. MySQL抓包工具:MySQL Sniffer【转】

    本文来自:https://github.com/Qihoo360/mysql-sniffer 简介 MySQL Sniffer 是一个基于 MySQL 协议的抓包工具,实时抓取 MySQLServer ...

  6. mysql抓包_mysql抓包工具

    简介 MySQL Sniffer 是一个基于 MySQL 协议的抓包工具,实时抓取 MySQLServer 端或 Client 端请求,并格式化输出.输出内容包括访问时间.访问用户.来源 IP.访问 ...

  7. Fiddler抓包工具保姆级使用教程(超详细)

    超文本传输协议(HTTP)是一个简单的请求-响应协议,其主要是基于TCP来实现的,可以通过Chrome开发者工具或者Wireshark或者Fiddler抓包,以便分析 HTTP 请求/响应的细节,本篇 ...

  8. vc mysql sniffer_MySQL抓包工具:MySQL Sniffer

    简介 MySQL Sniffer 是一个基于 MySQL 协议的抓包工具,实时抓取 MySQLServer 端的请求,并格式化输出.输出内容包访问括时间.访问用户.来源 IP.访问 Database. ...

  9. charles抓包工具_HTTP协议抓包工具:Charles for Mac

    Charles mac版对于开发者来说应该都不会陌生,这是一款非常实用的HTTP信息抓包工具,可以帮助开发人员查看其机器和Internet之间的所有HTTP和SSL / HTTPS流量,让你可以快速诊 ...

最新文章

  1. Serverless 解惑——函数计算如何访问 PostgreSQL 数据库
  2. 介绍一个好用的静态图片合成为 gif 动画的在线网站
  3. [kubernetes] 解决k8s.gcr.io Image 导入导出 等问题
  4. java学习(4):第一个java程序
  5. c语言小项目-使用mysql数据库的图书管理系统
  6. java web 开发技术大全 代码_Java Web开发技术大全
  7. Linux系统编程29:进程信号之什么是信号及signal函数
  8. React 一些相关的技巧
  9. [python] 解决OSError: Address already in use
  10. 日志分析ELK安装日志分析系统
  11. emacs 常用命令与配置
  12. PEWIN32 PRO site key
  13. C# GDAL 数字图像处理Part10 自动配准/半自动配准
  14. MySql CHECK使用方法
  15. [转]QNX系统-基于高通骁龙SA8155平台,中科创达发布智能驾驶舱3.0解决方案
  16. 为啥需要RPC,而不是简单的HTTP?
  17. scratch(图形化编程工具)3.28.0版本更新了!
  18. 联合 EMQ 发布云原生物联网消息服务联合解决方案,云上轻松构建 IoT 应用
  19. 数据中心如何应对雾霾污染?
  20. 从系统架构分析安全问题及应对措施

热门文章

  1. JQuery ajax使用总结
  2. Hadoop First Job
  3. 小区卖什么最吸引人?哪些在小区卖的好?
  4. 为什么我选择并且推崇用ROS开发机器人?
  5. shell 文件连接
  6. 四旋翼动力学和仿真翻译(Quadcopter Dynamics and Simulation)
  7. 知识图谱构建: Neo4j 常见实例应用
  8. freemarker中的split字符串分割
  9. C++ std:string 转 LPWSTR
  10. Android Jetpack架构组件之Navigation