Python爬虫谷歌Chrome F12抓包过程原理解析

作者:程序员的人生A 时间:2022-01-01 15:33:15 

浏览器打开网页的过程就是爬虫获取数据的过程,两者是一样一样的。浏览器渲染的网页是丰富多彩的数据集合,而爬虫得到的是网页的源代码htm有时候,我们不能在网页的html代码里面找到想要的数据,但是浏览器打开的网页上面却有这些数据。这就是浏览器通过ajax技术异步加载(偷偷下载)了这些数据。

大家禁不住要问:那么该如何看到浏览器偷偷下载的那些数据呢?

答案就是谷歌Chrome浏览器的F12快捷键,也可以通过鼠标右键菜单“检查”(Inspect)打开Chrome自带的开发者工具,开发者工具会出现在浏览器网页的左侧或者是下面(可调整),它的样子就是这样的:

Python爬虫谷歌Chrome F12抓包过程原理解析

让我们简单了解一下它如何使用:

谷歌Chrome抓包:1. 最上面一行菜单

左上角箭头 用来点击查看网页的元素

第二个手机、平板图标是用来模拟移动端显示网页

Elements 查看渲染后的网页标签元素

提醒 是渲染后(包括异步加载的图片、数据等)的完整网页的html,不是最初下载的那个html。

Console 查看JavaScript的console log信息,写网页时比较有用

Sources 显示网页源码、CSS、JavaScript代码

Network 查看所有加载的请求,对爬虫很有帮助

后面的暂且不管。

谷歌Chrome抓包:2. 重要区域

图中红框的两个按钮比较有用,编号为2的是清空请求记录;编号3的是保持记录,这在网页有重定向的时候很有用

图中绿色区域就是加载完整个网页,浏览器的全部请求记录,包括网址、状态、类型等。写爬虫时,我们就要在这里寻找线索,提炼金矿。

最下面编号为4的红框显示了加载这个网页,一共请求了181次,数量是多么地惊人,让人不禁心疼七浏览器来。

点击一条请求的网址,右侧就会出现新的窗口显示该条请求的相信信息:

Python爬虫谷歌Chrome F12抓包过程原理解析

图中左边红框就是点击的请求网址;绿框就是详情窗口。

详情窗口包括,Headers(请求头)、Preview(预览响应)、Response(服务器响应内容)和Timing(耗时)。

Preview、Response 帮助我们查看该条请求是不是有爬虫想要的数据;

Headers帮助我们在爬虫中重建http请求,以便爬虫得到和浏览器一样的数据。

了解和熟练使用Chrome的开发者工具,大家就如虎添翼可以顺利写出自己的爬虫啦。

来源:https://www.cnblogs.com/chengxuyuanaa/p/13024049.html

标签:Python,爬虫,谷歌,F12,抓包
0
投稿

猜你喜欢

  • python监测当前联网状态并连接的实例

    2023-04-19 03:33:19
  • python版本的读写锁操作方法

    2023-04-29 05:18:57
  • 浅谈python 中的 type(), dtype(), astype()的区别

    2022-09-13 22:40:39
  • ASP应用:用stream读文件

    2007-09-24 13:33:00
  • ASP函数大全(数字函数)

    2009-06-01 12:33:00
  • 基于python3 类的属性、方法、封装、继承实例讲解

    2022-12-09 17:54:02
  • JavaScript实现淘宝网图片的局部放大功能

    2023-08-25 05:44:56
  • python实现跳表SkipList的示例代码

    2022-04-05 05:01:53
  • js和jquery判断数据类型的4种方法总结

    2023-08-25 08:49:18
  • 用Dreamweaver设计Wordpress留言板教程(一)

    2010-03-17 15:44:00
  • Python编写电话薄实现增删改查功能

    2021-07-14 21:28:18
  • 在Dreamweaver MX中应用“占位图形”

    2009-07-10 13:16:00
  • python中的argparse基本用法(使用步骤)

    2023-06-12 20:01:36
  • Python configparser模块操作代码实例

    2021-11-05 18:48:08
  • 为自己的网站添加RSS功能

    2007-11-05 19:18:00
  • 防止表格或或div层被撑开的几种方法

    2008-01-01 15:33:00
  • Keras 在fit_generator训练方式中加入图像random_crop操作

    2023-10-31 23:05:51
  • django传值给模板, 再用JS接收并进行操作的实例

    2021-08-23 08:03:46
  • 10分钟学会Google Map API (一)

    2009-06-07 18:17:00
  • Python采集情感音频的实现示例

    2023-06-11 23:17:10
  • asp之家 网络编程 m.aspxhome.com