【爬虫】01.浏览器F12-开发者工具的妙用

目录

  • F12调试窗功能
    • **1.如何开启调试窗口?**
    • 2.调试窗口的简单介绍
      • **1.Element**
        • 定位
        • 删除、修改
        • 摘取
      • 2.Console
      • 3.Source
        • 3.1.page页面
        • 3.2Filesystem页面
        • 3.3Overrides页面
          • 3.3.1手动创建重写的js文件
          • 3.3.2利用浏览器自动创建重写文件
          • 3.3.3 利用Fiddler替换js文件
        • 3.4Snippets页面
      • 4.Network
        • **1.数据包过滤区域**
        • **2.时间轴区域**
        • **3.数据包区域**
      • 5.Application
  • 总结

F12调试窗功能

1.如何开启调试窗口?

F12Ctrl+Shift+I在浏览器中找到开发者工具选项。多了解几种调试窗口的打开方式,有些时候能够绕过禁止快捷键打开调试窗口的反调。
在这里插入图片描述

2.调试窗口的简单介绍

在这里插入图片描述

常用功能进行介绍:

1.Element

可以直接对html源代码进行定位、删除、修改、摘取等操作。

定位

1.可以大致的翻一下代码,当移动到正确的代码位置时,对应页面也会有框选提示

在这里插入图片描述

2.点击调试窗口左上角的光标按钮,选中页面中想要选取的功能,单击即可找到对应代码。
在这里插入图片描述

3.在页面中找到想要获取的元素位置,右键→检查,即可跳转到对应代码
在这里插入图片描述

删除、修改

还是以bing的搜索按钮为例,为了演示我们可以对元素先进行复制
在这里插入图片描述
然后右键选择Delete element即可删除
在这里插入图片描述

当然我们还能对标签内部进行属性的添加和修改,具体操作可以选择想要修改的元素→右键→Add attribute/Edit attribute。或者直接对想要修改的元素进行双击即可。
在这里插入图片描述

摘取

这个功能非常实用,能够让我们在编写脚本的时候快速对元素定位。
在这里插入图片描述

2.Console

用于单行执行js代码,可以结合断点调试做一些赋值,取值操作。
在这里插入图片描述

3.Source

Source-源代码页面,可以用来对当前打开网站的资源进行查看,当然也能对js代码进行代码编写、调试重写等操作。

3.1.page页面

其中,page页面就是用于对网站资源的查看,在这里我们能够轻松的找到我们想要的js文件,当然这些文件都是只读状态,并不能进行修改操作
在这里插入图片描述

3.2Filesystem页面

点击Add folder to workspace,选择一个本地目录进行关联
在这里插入图片描述
在关联的时候需要对文件访问的权限进行获取,点击允许即可,这样我们就能做一些代码编写的操作。
在这里插入图片描述

3.3Overrides页面
3.3.1手动创建重写的js文件

代码重写页面,也是需要先关联一个本地目录作为工作区。当我们有对page页面中的代码重写需求的时候,可以创建一个与page页面目录结构相同的文件(重点),然后加入到Override页面中,这样才能对该文件进行修改。
在这里插入图片描述

3.3.2利用浏览器自动创建重写文件

当然,也可以直接找到我们需要修改的文件,右键→选择Save for overrides,这样也能创建一个与原本文件目录结构相同的文件。
在这里插入图片描述

创建成功后,我们尝试着对js代码进行简单的修改,然后我们点击登录按钮,触发代码,发现,在控制台上打印了我们想要打印的内容,说明代码修改并执行成功。
在这里插入图片描述

但遇到带有其他参数,例如时间戳的就不那么好用。例如:xxx.com?_t=16611111

3.3.3 利用Fiddler替换js文件

当然,不仅仅能利用浏览器自带的功能进行代码重写,也可以使用Fiddler对服务器发送的js文件进行截获,修改后再发送至浏览器端。

具体流程就不演示了,大概说一下做法。

在捕获到的文件中找到想要修改的js文件,并拖放到右侧的AutoResponse模块中,进入AutoResponder模块后,勾选Enable rules和Unmatched requests passthrough选项并添加自动替换规则,将本地编辑的JS代码替换在线加密的JS代码,然后刷新页面即可。

当然,Chrome中也有插件能够实现类似功能

https://github.com/annnhan/ReRes

3.4Snippets页面

这个页面可以写一些临时的测试代码,并且可以正常的进行下断、调试等操作。而且点击运行按钮之后该代码还能对网页造成影响。不仅如此在调试的时候我们还能结合Console界面进行一些赋值、变量输出等操作。其功能不亚于自己本地配置的js环境。
在这里插入图片描述

4.Network

首先我们来了解一下这几个小功能:
在这里插入图片描述

从左到右分别是:停止抓包、清除数据包记录、筛选、数据包关键字搜索、数据包记录(勾选上后刷新页面不会首先清除之前抓到的数据包)、禁止缓存。
其中,数据包记录和禁止缓存选项建议勾选上,方便调试。最后,介绍一下最右边的两个按钮,分别是用于导入HAR文件和导出HAR文件。(HAR文件是将当前状态进行记录,方便发送给别人进行调试,可以导入到浏览器中调试或者Fiddler中调试)

然后,就是介绍下面几个重要的区域:
在这里插入图片描述

1.数据包过滤区域

除了上面有的一些默认过滤选择之外,我们还可以自行编写过滤器,然后写在Filter框上。

我们可以选择自己想要的文件类型,如:.css、.js

也可以选择对应的方法,如:method:GET

又或者通过-来对不想要的内容进行去除,当然,在输入-的时候也有一个好处,能够看到对应的提示。
在这里插入图片描述

2.时间轴区域

当我们勾选了Preserve log选项后,会将我们请求过的数据包都记录下来,这时候数据包的量会特别多,并且还会有一些重复的数据包。这个时候我们就可以选择到对应的时间段进行对数据包的查找。
在这里插入图片描述

例如,我现在就是只看最开始的那段时间的数据包。

如果我们想要查看全部的数据包的时候,也很简单,直接双击时间轴区域即可。

3.数据包区域

这个区域相信大家都经常会用到,就不多介绍,多点几下也就熟悉了。
在这里插入图片描述

5.Application

该界面用于管理web页面中加载的资源,比较重点的当然就是Local Storage和Cookies中的内容了,有兴趣的话可以逐个点开看看,这里就不多介绍了。
在这里插入图片描述

当然,调试窗口上的功能并不止这些,还有一些也是比较常用的功能会放在后面进行介绍,就例如搜索、方法栈、断点调试功能等。

总结

相信大家对浏览器的基础功能都有了基本的了解了,那么下一篇就是对浏览器断点的解读,敬请期待哦~

好的,下面我以 CSDN 网站为例,来演示如何在 Chrome 浏览器中获取 cookies。 1. 首先,打开 Chrome 浏览器,并在地址栏中输入 https://www.csdn.net,进入 CSDN 网站。 2. 按下 F12 键打开开发者工具。你也可以通过右键点击页面,然后选择“检查”来打开开发者工具。 3. 在开发者工具中,点击“Application”选项卡。 4. 在左侧导航栏中找到“Cookies”选项卡,并展开它。 5. 在展开的“Cookies”选项卡中,你将看到 CSDN 网站的 cookies 列表,包括名称、值、域名、路径、过期时间等。 6. 找到名为“_csrf_token”的 cookie,并复制它的值。该 cookie 通常是用于防止 CSRF 攻击的。 在获取了 cookies 的值后,我们可以使用 requests 库来发送带有 cookies 的 HTTP 请求。以下是示例代码: ``` import requests # 设置请求头 headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3' } # 设置 cookies cookies = { '_csrf_token': 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' } # 发送带有 cookies 的请求 response = requests.get('https://www.csdn.net', headers=headers, cookies=cookies) # 输出响应结果 print(response.text) ``` 在上面的代码中,我们使用了 requests 库来发送 GET 请求,并在请求头中设置了 User-Agent,模拟了一个正常的浏览器请求。同时,我们还设置了 cookies,将从开发者工具中获取的 _csrf_token 值填入 cookies 中。最后,我们使用 response.text 来输出请求的响应结果。 需要注意的是,每个网站的 cookies 都不同,你需要根据实际情况来获取和设置 cookies。同时,有些网站会对 cookies 做一些安全措施,比如设置过期时间、限制访问等,你需要考虑这些因素来编写你的爬虫代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值