编写chrome插件去除某考试网站切屏限制
## 前言通过编写chrome插件实现js inline-hook.
去除某考试网站在线考试切屏限制.
## 环境
- Microsoft Edge 版本 95.0.1020.53 (64位)
## 过程
1.打开考试网站,切屏,发现有切屏检测.
2.打开控制台,全局搜索window.onblur.(window.onblur是浏览器失去焦点是执行的函数).
3.格式化代码,保存到本地.
4.将所有的window.onblur的函数返回空.
5.编写chrome扩展,拦截并替换原js文件.
js/background.js
```
// 监听发送请求
chrome.webRequest.onBeforeRequest.addListener(
function (details) {
console.log(details.url);
// 匹配特定的路径
if (details.url.startsWith('https://kc.zhixueyun.com/scripts/exam-6')) {
return {
//替换为已经修改后的js文件
redirectUrl: chrome.extension.getURL("js/exam.js")
};
}
},
{
urls: ["<all_urls>"],
types: ["script"]
},
["blocking"]
);
```
manifest.json
```
{
"manifest_version": 2,
"name": "网大考试",
"version": "1.0",
"description": "网大考试_Shocker",
"background": {
"scripts": [
"js/background.js"
]
},
"permissions": [
"downloads",
"*://kc.zhixueyun.com/#/exam/*",
"webRequest",
"webRequestBlocking",
"notifications"
],
"web_accessible_resources": [
"js/*"
]
}
```
manifest.json的配置
可以参考这篇文章:
chrome拓展开发实战:页面脚本的拦截注入
https://www.cnblogs.com/horve/p/4672890.html
## 写在最后
部分代码参考
1.chrome拓展开发实战:页面脚本的拦截注入
https://www.cnblogs.com/horve/p/4672890.html
2.chrome浏览器拓展——js脚本拦截及注入
https://github.com/Horve/js-inject
3.Chrome扩展及应用开发
https://github.com/Sneezry/chrome_extensions_and_apps_programming
## 代码示例
github地址:
https://github.com/PShocker/chrome_extensions_js_hook 很实用的插件啊,昨天我考试还说怎么没有这样的插件今天就看到了,早让我看到就好了!:lol xiaobaicaisusu 发表于 2021-12-2 20:36
感谢
我在论坛只找到了不全的爬虫教学,不知大佬有没资源可以分享一下。谢谢
没有也没关系,谢谢
https://study.163.com/course/introduction/1211362828.htm 楼主很强,感谢楼主分享 谢谢分享 这个实用 nice 感谢 可以可以 学习中,谢谢 牛人一个,啥时候俺也能编编程 很有用 谢谢分析 牛,找机会试试 学习一波!感谢楼主!