[油猴脚本开发指南] 消失的console
本帖最后由 啊麟 于 2024-3-22 22:17 编辑####在学习ScriptCat时,遇到个奇怪的问题,ScriptCat居然不注入?
!(data/attachment/forum/202403/22/220542wimlilbb3r8t5rid.jpg)
```js
(function() {
'use strict';
console.log("🐱 run ing...")
// ellipsis...
})();
```
####遇到这个问题我首先查看了@match @run-at ,发现都没问题。
####这就奇怪了,后面问了下mhsj。
!(data/attachment/forum/202403/22/220233fm05ab03aahhbh6m.png)
####结果是console 被劫持。。。 这网站居然还劫持我的console,给我挖了个坑。
####后面在网站源代码上找到了对应的劫持代码,实际上就是替换成它自己的console
!(data/attachment/forum/202403/22/220443dnj93oi9eoixwl4o.png)
####可恶....好好的劫持我的console干嘛
!(data/attachment/forum/202403/22/220528fki66u8v6xh65za2.jpg)
#### 后面试了document-start 抢先拿到console保存,发现居然不行?这就头疼了。。。
!(data/attachment/forum/202403/22/220749a2jlby1ypvyrjq1d.jpg)
#### 使用GM_log也不是不行,就是很多特殊类型无法显示。对后续开发肯定有很大阻碍。
!(data/attachment/forum/202403/22/221003iaqn6pqef3ne6xze.jpg)
#### 后面仔细一想,我可不可以创建一个新的领域?在新的领域里拿到新的console?
!(data/attachment/forum/202403/22/221039sn6e3v6qvl93lydn.jpg)
#### 开整!!!
```js
(function () {
'use strict';
// 领域展开
var iframe = document.createElement('iframe')
iframe.style.display = 'none' // 隐藏
document.body.appendChild(iframe) // 添加
var _console = iframe.contentWindow.console // new console
_console.log("进入")
})();
```
#### 成了!!!
!(data/attachment/forum/202403/22/221509x6v2h44n5q22rr11.jpg)
!(data/attachment/forum/202403/22/221355dgcydtjctxcunyzt.png)
#### 打完收工
#### 感谢 李恒道 感谢mhsj 感谢scriptcat 直接删除掉grant none进入沙盒模式基本就能正常打印了 ![](https://bbs.tampermonkey.net.cn/data/attachment/forum/202403/22/220542wimlilbb3r8t5rid.jpg)
算是脚本猫的一个bug,后续看看怎么修复 王一之 发表于 2024-3-23 10:22
![](https://bbs.tampermonkey.net.cn/data/attachment/forum/202403/22/220542wimlilbb3r8t5rid.jpg)
...
说起来
油猴最近更新删除了proxyWindow的document处理逻辑
导致我之前的分析全没用了...
是不是要上mv3的前置准备? 李恒道 发表于 2024-3-24 05:46
说起来
油猴最近更新删除了proxyWindow的document处理逻辑
导致我之前的分析全没用了...
可能是,看看哪些失效了 本帖最后由 潘钜森 于 2024-3-24 13:56 编辑
> [李恒道 发表于 2024-3-23 05:07](forum.php?mod=redirect&goto=findpost&pid=79441&ptid=6415)
> > 直接删除掉grant none进入沙盒模式基本就能正常打印了
**在head中加入了script怎么破?网站:[https://www.keke6.app/play/223267-14-367148.html](https://www.keke6.app/play/223267-14-367148.html)**
[`https://vf.vukfnqr.com/vod_pc_static_kkdy/frameworks/disable-devtool/latest/index.min.js`](https://vf.vukfnqr.com/vod_pc_static_kkdy/frameworks/disable-devtool/latest/index.min.js)
**DISABLE-DEVTOOL**他还设置了定时器一直在清除控制台数据 潘钜森 发表于 2024-3-24 13:52
> [李恒道 发表于 2024-3-23 05:07](forum.php?mod=redirect&goto=findpost&pid=79441&ptid=6415)
> >...
这个跟麟的一样
一之bug还没修复
可以像他一样取iframe的console
修复的话直接去掉none进沙盒就行了
```js
// ==UserScript==
// @name New Userscript
// @namespace http://tampermonkey.net/
// @version 2024-03-24
// @descriptiontry to take over the world!
// @author You
// @match https://www.keke6.app/play/223267-14-367148.html
// @icon https://www.google.com/s2/favicons?sz=64&domain=keke6.app
// @grant unsafeWindow
// @run-at document-start
// ==/UserScript==
unsafeWindow.console.clear=()=>{}
console.log('8888')
```
页:
[1]