Python爬虫谷歌Chrome F12抓包过程原理解析
作者:程序员的人生A 发布时间:2022-01-01 15:33:15
浏览器打开网页的过程就是爬虫获取数据的过程,两者是一样一样的。浏览器渲染的网页是丰富多彩的数据集合,而爬虫得到的是网页的源代码htm有时候,我们不能在网页的html代码里面找到想要的数据,但是浏览器打开的网页上面却有这些数据。这就是浏览器通过ajax技术异步加载(偷偷下载)了这些数据。
大家禁不住要问:那么该如何看到浏览器偷偷下载的那些数据呢?
答案就是谷歌Chrome浏览器的F12快捷键,也可以通过鼠标右键菜单“检查”(Inspect)打开Chrome自带的开发者工具,开发者工具会出现在浏览器网页的左侧或者是下面(可调整),它的样子就是这样的:
让我们简单了解一下它如何使用:
谷歌Chrome抓包:1. 最上面一行菜单
左上角箭头 用来点击查看网页的元素
第二个手机、平板图标是用来模拟移动端显示网页
Elements 查看渲染后的网页标签元素
提醒 是渲染后(包括异步加载的图片、数据等)的完整网页的html,不是最初下载的那个html。
Console 查看JavaScript的console log信息,写网页时比较有用
Sources 显示网页源码、CSS、JavaScript代码
Network 查看所有加载的请求,对爬虫很有帮助
后面的暂且不管。
谷歌Chrome抓包:2. 重要区域
图中红框的两个按钮比较有用,编号为2的是清空请求记录;编号3的是保持记录,这在网页有重定向的时候很有用
图中绿色区域就是加载完整个网页,浏览器的全部请求记录,包括网址、状态、类型等。写爬虫时,我们就要在这里寻找线索,提炼金矿。
最下面编号为4的红框显示了加载这个网页,一共请求了181次,数量是多么地惊人,让人不禁心疼七浏览器来。
点击一条请求的网址,右侧就会出现新的窗口显示该条请求的相信信息:
图中左边红框就是点击的请求网址;绿框就是详情窗口。
详情窗口包括,Headers(请求头)、Preview(预览响应)、Response(服务器响应内容)和Timing(耗时)。
Preview、Response 帮助我们查看该条请求是不是有爬虫想要的数据;
Headers帮助我们在爬虫中重建http请求,以便爬虫得到和浏览器一样的数据。
了解和熟练使用Chrome的开发者工具,大家就如虎添翼可以顺利写出自己的爬虫啦。
来源:https://www.cnblogs.com/chengxuyuanaa/p/13024049.html


猜你喜欢
- api文档 https://sms-activate.org/cn/api2要使用SMSActivateAPI库从sms-activate.
- Python对递归函数设置是有默认值。 可以通过下面命令来查看设置的默认值>>> import sys>>&g
- 出差做PPT,要放一些图片上去,原图太大必须resize,十几张图片懒得一一处理了,最近正好在学python,最好的学习方式就是使用,于是写
- pytorch geometric的GNN、GCN节点分类# -*- coding: utf-8 -*-import osimport to
- 本文实例讲述了Python实现字符串反转的常用方法。分享给大家供大家参考,具体如下:下面是实现python字符串反转的四种方法:1. 切片d
- 如下所示:#先下载psutil库:pip install psutilimport psutilimport os,datetime,tim
- 主要能兼容: PHP 5 一、chdir -- 改变目录 语法:bool chdir&nb
- 摘要前面给大家分享了pandas做数据合并的两篇[pandas.merge]和[pandas.cancat]的用法。今天这篇主要讲的是pan
- asp中利用XMLhttp对象获取远程的数据,然后用二进制输出到客户浏览器,让客户下载数据,此例从某一远程服务器获取一个压缩包,并且输出到浏
- 一、深复制与浅复制列表是Python中自带的一种数据结构,在使用列表时,拷贝操作不可避免,下面简单讨论一下列表的深复制(拷贝)与浅复制首先看
- 百度AI提供了一天50000次的免费文字识别额度,可以愉快的免费使用!下面直接上方法:首先在百度AI创建一个应用,按照下图创建即可,创建后会
- 很久之前就对jQuery.animate的实现非常感兴趣,不过前段时间很忙,直到前几天端午假期才有时间去研究。jQuery.animate的
- JSON是一种轻量级的数据交换格式,各种语言都有良好的支持。字典是Python的一种数据结构。可以看成关联数组。有些时候我们需要设计到字典转
- 上一篇内容,已经学会了使用简单的语句对网页进行抓取。接下来,详细看下urlopen的两个重要参数url和data,学习如何发送数据data一
- Python 是由吉多·范罗苏姆(Guido Van Rossum)在 90 年代早期设计。 它是如今最常用的编程语言之一。它的语法简洁且优
- pandas可以将读取到的表格型数据(文件不一定要是表格)转成DataFrame类型的数据结构,然后我们可以通过操作DataFrame进行数
- 前言:大家都知道在java 开发过程中,会经常用到锁,在java 代码中,我们都知道锁是加在对象头上的,在java对象布局中有锁的标志位。程
- 本文介绍了几种常用的python下载文件的方法,具体使用到了htttplib2,urllib等包,希望对大家有帮忙。1.简单文件下载使用ht
- 1. 字符编码简介1.1. ASCIIASCII(American Standard Code for Information Interc
- 本来是只用Tenorflow的,但是因为TF有些Numpy特性并不支持,比如对数组使用列表进行切片,所以只能转战Pytorch了(pytor