发现一个网站,打开开发者工具后网页会自动跳转到其他页面,有没有大佬有详细的解决方法。学习一下。 因为需要抓包获取请求所以不能禁用JS。https://gaze.run/play/5d4c2a8e08e5e0499dd3b4d8f2cd858a 网页, 解决方法
给网站加一个油猴脚本,打开f12跳转前会增加一个confirm,然后点取消就好了。 [JavaScript] 纯文本查看 复制代码// ==UserScript== // @name New Userscript // @namespace http://tampermonkey.net/ // @version 2024-11-30 // @description try to take over the world! // @AuThor You // @match https://xxxx 改成你要hook的网址 // @grant none // ==/UserScript== (function() { 'use strict'; window.addEventListener('beforeunload', function (event) { // 设置 returnValue 属性将触发确认对话框 // 注意:现代浏览器可能会忽略你设置的字符串,并显示自己的标准消息 event.returnValue = '你确定要离开这个页面吗?'; // 对于旧版浏览器 return '你确定要离开这个页面吗?'; // 对于现代浏览器(推荐这种写法) }); })();
跳转的原因是有个devtools-detector.min.js文件导致的。 先F12打开开发者工具,然后地址栏输入这个网址,等网站加载好了的瞬间,如下图,选Offline,相当于断网。 [i] 然后把devtools-detector.min.js右键Block request URL就好了,相当于把这个文件拉黑。 [i] 最后恢复网络连接,重新输入网址回车就好了。
1. **理解网页禁止F12调试的原理** - 网页通过JavaScript来检测是否打开了开发者工具(F12)。当检测到开发者工具被打开时,就会执行跳转网页等操作。这是一种常见的反调试手段,主要是为了保护网页的代码逻辑、防止数据被轻易获取等。 2. **解决方法** - **禁用JavaScript(不推荐)** - **原理**:因为网页检测F12是通过JavaScript实现的,所以禁用JavaScript可以避免这种检测。不过,这样会导致网页上很多依赖JavaScript的功能无法正常使用。 - **操作方法**:在浏览器的设置选项中找到“隐私和安全”或类似的选项,然后在其中找到“内容设置”,再找到“JavaScript”并将其设置为“禁止”。不同浏览器的具体操作步骤可能会有所不同。例如,在Chrome浏览器中,可以在“设置” - “隐私和安全” - “站点设置” - “JavaScript”中进行设置。 - **使用代{过}{滤}理工具绕过检测(有一定技术要求)** - **原理**:通过代{过}{滤}理工具修改请求和响应,在网页代码加载检测F12的JavaScript代码之前,将其拦截或者修改。例如,可以使用Fiddler、Charles等代{过}{滤}理工具。 - **操作方法(以Fiddler为例)**: - 首先下载并安装Fiddler。安装完成后,打开Fiddler并设置好代{过}{滤}理(通常在浏览器的代{过}{滤}理设置中设置为本地Fiddler的代{过}{滤}理地址,如12.0.0.1:8888)。 - 然后在Fiddler中找到“AutoResponder”选项卡,开启自动响应功能。在这里可以添加规则,当检测到网页请求包含检测F12的JavaScript代码时,用修改后的代码或者空代码进行替换。不过,这需要对网页的请求和代码有一定的了解,才能准确地找到和修改相关代码。 - **修改浏览器快捷键(可能不适用于所有情况)** - **原理**:尝试修改浏览器打开开发者工具(F12)的快捷键,使得网页的检测代码无法检测到F12被按下。不过,一些高级的检测方法可能不仅仅依赖于快捷键的检测。 - **操作方法**:在一些浏览器中,可以通过自定义快捷键来实现。例如,在Firefox浏览器中,可以在“选项” - “常规” - “快捷键”中修改开发者工具的打开快捷键。但这种方法可能会因浏览器更新或网页检测机制的改进而失效。
DetectiveConan 发表于 2024-11-30 19:49 跳转的原因是有个devtools-detector.min.js文件导致的。 先F12打开开发者工具,然后地址栏输入这个网址 ... 我把devtools-detector.min.js屏蔽以后,网页的视频数据都不加载了