代码可以在 https://pan.baidu.com/s/1uN120-18hvAzELpJCQfbXA  处下载

说思路

  1. 页面加载一段时间后,判断页面有没有宝箱,如果没有就停止注入js,如果有则 激活一个timer
  2. timer 循环判断是否还有宝箱,如果有,则把宝箱信息 写 入document.title用于提醒用户,并判断是否为验证页面,如不是则不断点击宝箱的领取按钮进行验证按钮

好,加入一个js 目录,添加一个 treasureBox.js,代码如下

 function getBoxInfo() {
try{
if ($("#treasure").css("display") == "block") { //"none"无, "block"有
var openBoxTimer=setInterval(function(){
if ( $("#treasure").css("display") == "block") {
document.title =$(".peck-cdn").text(); //宝箱信息显示在网页标题上
//从未开过宝箱undefined,开过"none",正在开"block"
if ($(".geetest_fullpage_click.geetest_float.geetest_wind.geetest_click").css("display") != "block") {
$(".peck-cdn").click(); //点击领取
$(".geetest_radar_tip").click(); //点击按钮进行验证
}
}else{
this.close();
}
},800);
}
}catch(err){
}
}; $(document).ready(function(){
if (roomObj.getRoomId() =="") {
return;
}
var boxInfoTimer=setTimeout("getBoxInfo()",8000);
});

manifest.json 加入 引用的文件

"content_scripts":[{
"js": [

"js/treasureBox.js"
], //要注入的js

}],

就完成了,结果发现,,宝箱 并为自动打开,,要鼠标悬浮 在宝箱上面才行!

这怎么可以忍呢?? 去查查什么原因

然后,我就 搜 关键字运气不佳,宝箱已被洗劫一空T_T”,定位到文件https://shark.douyucdn.cn/app/douyu/js/page/room/normal/mod-all2.js?v8.173 内,继续关键字 “mouseover”,” mouseenter”,” treasure”,

drawTreasure: function() {
var e = this,
t = e.doms,
i = e.config,
...
t.$treasure.on("click", function() {
...
if (i.isTrueasureDraw && i.isTreasureHover && !(i.bindStatus > 0)) return ...
})
},

i.isTreasureHover 就是检测了 鼠标状态,想办法删除或使之为ture都行,

好了,把 修改后的  mod-all1.js 放入 js\RedirectJs内,

去manifest.json 加入扩展 可访问 磁盘文件的相对路径。

修改 background.js, 在要阻止的urls 列表里加入 "https://shark.douyucdn.cn/app/douyu/js/page/room/normal/mod-all1.js?v*", 这样,才会进入回调函数callback,然后 判断是否是 mod-all1.js 的网络路径,如果是则返回 本地的js.

然后 重新加载。可以愉快地 抢鱼丸了。网页标题 显示 开箱时间,到领取时,会打开到点汉字认证 那个页面 (只能到 这个页面了)。

斗鱼扩展--拦截替换js_辅助抢宝箱(六)的更多相关文章

  1. 斗鱼扩展--DouyuRoom使用说明(十四)

    1.从 https://pan.baidu.com/s/1yBfZFtcakbDxmyas0VCpRw 下载 DouyuRoom.zip 然后解压到一个目录,我是放在C盘根目录下的,你们随意.然后解压 ...

  2. 斗鱼扩展--notifications提示(十二)

    来说下 桌面通知 Notification,HTML5支持 Web Notifications 的实例,但是要经过用户允许,  chrome://settings/content/notificati ...

  3. 斗鱼扩展初识Chrome扩展(一)

    看斗鱼有些时间了,也写了不少辅助的js,但是昨天不小心把硬盘分区表搞没了,自己写了好久的代码不见了,DiskGenius 也没恢复成功,所以要重写一次,大家要引以为鉴,常备份代码,github是个不错 ...

  4. Spring扩展:替换IOC容器中的Bean组件 -- @Replace注解

    1.背景:     工作中是否有这样的场景?一个软件系统会同时有多个不同版本部署,比如我现在做的IM系统,同时又作为公司的技术输出给其他银行,不同的银行有自己的业务实现(比如登陆验证.用户信息查询等) ...

  5. 如何给selenium.chrome写扩展拦截或转发请求

    Selenium.WebDriver Selenium WebDriver 是一组开源 API,用于自动测试 Web 应用程序,利用它可以通过代码来控制chrome浏览器! 有时候我们需要mock接口 ...

  6. 斗鱼扩展--localStorage备份与导出(九)

    之前我们都把数据 放在了 localStorage 里,但扩展一旦卸载,数据就会被清空, 在Console里备份,一次只能输出一条,小白操作起来很不方便,所以能不能 导入,导出文件来进行备份还原呢? ...

  7. MVC路由 路由的三种扩展 替换MVC内置的Handler

    Global.asax 是 程序入口文件 路由配置   为什么localhost:8088/Home/Index/1 能返问到我们写的 会去掉前缀跟端口号  变成Home/Index/1 用这个跟路由 ...

  8. Asp.net 面向接口可扩展框架之核心容器(含测试代码下载)

    新框架的容器部分终于调通了!容器实在太重要了,所以有用了一个名词叫“核心容器”. 容器为什么那么重要呢?这个有必要好好说道说道. 1.首先我们从框架名称面向接口编程说起,什么是面向接口编程?(这个度娘 ...

  9. 报表开发之扩展GROUP BY

    在实际运用中.比方在数据仓库中,常常须要对数据进行多维分析.不仅须要标准分组的结果(相当于 GROUP BY),还须要不同维度的小计(简单 GROUP BY 中取部分列分组)和合计(不分组).从而 提 ...

随机推荐

  1. python 爬虫 之BeautifulSoup

    BeautifulSoup是一个模块,该模块用于接收一个HTML或XML字符串,然后将其进行格式化,之后便可以使用他提供的方法进行快速查找指定元素,从而使得在HTML或XML中查找指定元素变得简单. ...

  2. Windchill

    判断某查询栏位是否为空 错误:if (projComp != null && !projComp.equals("")) 正确:if((projComp != nu ...

  3. [codeforces821E]Okabe and El Psy Kongroo

    题意:(0,0)走到(k,0),每一部分有一条线段作为上界,求方案数. 解题关键:dp+矩阵快速幂,盗个图,注意ll 关于那条语句为什么不加也可以,因为我的矩阵C,就是因为多传了了len的原因,其他位 ...

  4. Codeforces 1107G Vasya and Maximum Profit 线段树最大子段和 + 单调栈

    Codeforces 1107G 线段树最大子段和 + 单调栈 G. Vasya and Maximum Profit Description: Vasya got really tired of t ...

  5. Material使用07 MdGridListModule的使用

    1 MatGridListModule简介 对相似数据的展现,尤其是像是图片的展示 使用起来很像表格 官方文档:点击前往 2 MatGridListModule提供的指令 2.1 mat-grid-l ...

  6. shell if的使用

    1 字符串判断 str1 = str2 当两个串有相同内容.长度时为真 str1 != str2 当串str1和str2不等时为真 -n str1 当串的长度大于0时为真(串非空) -z str1 当 ...

  7. 28.【转载】挖洞技巧:APP手势密码绕过思路总结

    说到APP手势密码绕过的问题,大家可能有些从来没接触过,或者接触过,但是思路也就停留在那几个点上,这里我总结了我这1年来白帽子生涯当中所挖掘的关于这方面的思路,有些是网上已经有的,有些是我自己不断摸索 ...

  8. MVC下使用ajax后台查询值赋值到前端控件

    初学MVC,今天做个简单的功能,就是输入BeginDate和EndDate,从后台计算后赋值给另外一个文本框Amount 界面很简单,方法也很简单,今天就使用jquery的post方法,先准备后台代码 ...

  9. SQL Server事务回滚对自增键的影响

    SQL Server事务回滚时是删除原先插入导致的自增值,也就是回滚之前你你插入一条数据导致自增键加1,回滚之后还是加1的状态 --如果获取当前操作最后插入的identity列的值:select @@ ...

  10. 【Java】NIO中Selector的创建源码分析

    在使用Selector时首先需要通过静态方法open创建Selector对象 public static Selector open() throws IOException { return Sel ...