记一次chrome插件调试

简介: 记一次chrome插件调试

前言


因为谷歌翻译退出中国,导致翻译不太好用了,所以去谷歌商店找了个用着还不错的翻译插件,没想到发现其全文翻译的功能每天只能使用3次,不限使用需要开会员。之前还没做过插件调试,这次就简单试试水,最后成功达到了目的,遂记录下。

1cf5b859caef069a7509d0cb05802bfc_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg


调试过程


思路


因为这个插件每天只能全文翻译三次,当超过次数后会弹窗提示,导致功能不可用。猜测肯定是哪里做了一个计数,同时还有会员、功能翻译次数的判断,那么思路无非就是修改这个判断的结果,从而达到无限制使用的目的

前置知识

Chrome插件基本由mainfest.json, content-script, background.js, popup组成

  •  mainfest.json: 插件的配置文件
  • content-script: 用来向页面注入cssjs
  • background.js: 常驻于浏览器的一个脚本, 始终在运行
  •  popup: 即点击插件的logo以后弹出的窗口


debug


打开chrome,在源码栏选择content scripts栏,全局搜索提示非会员每天定位到判断函数,随便在上面下个断点

f79d816b9d583b82e03abb8fa43a2021_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

点击插件翻译按钮,简单跟了几步就发现一个关键判断,这里的参数值不用关心是如何生成的,只需要知道这里判断return的结果会对上面的判断产生影响

f78b934e23b550e6512a918931233ff0_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

其中一个判断值就是i这个对象

d8f110b2f3f89651129a7b0c0d1c550d_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

i这个对象里面有个字典,其中pageTranslateLimit这个值中的times很关键

只需要将它每次修改为0,那么上面的次数判断就能绕过,充不充会员也就没啥意义了


修改覆盖


chrome的地址栏输入chrome://version/, 可以看到你的chrome根目录

2a61f1f9452e4d301becdb3a4f3be29c_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

在该目录下的Extensions是插件目录,右键插件图标管理扩展程序就能看到插件的id

9dab803c384ad4f17c32d68d1cc3584d_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

将原目录的文件拷出来,然后修改99.js文件,在关键函数下重新赋值即可

d82ff3dae3a366d13732ce31280c3fd9_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

然后删除原版插件,打开开发者模式,加载修改后的文件

8532f84d2b24fe65f349ec0dcb6dd299_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

然后就能愉快的无限制使用翻译功能了

e2b35986fe91a49091b8a39baaa865c0_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg


相关文章
|
2月前
|
Web App开发 JavaScript 前端开发
使用vue快速开发一个带弹窗的Chrome插件
使用vue快速开发一个带弹窗的Chrome插件
67 0
使用vue快速开发一个带弹窗的Chrome插件
|
2月前
|
Web App开发 JavaScript 前端开发
从零开始,轻松打造个人化Chrome浏览器插件
从零开始,轻松打造个人化Chrome浏览器插件
74 0
|
3月前
|
Web App开发 JavaScript 前端开发
chrome调试秘籍,让你的开发速度飞起来
chrome调试秘籍,让你的开发速度飞起来
|
5月前
|
Web App开发 存储 前端开发
一键同步,无处不在的书签体验:探索多电脑Chrome书签同步插件
一键同步,无处不在的书签体验:探索多电脑Chrome书签同步插件
115 0
|
5月前
|
Web App开发 存储 缓存
(新)Chrome浏览器自定义背景插件
(新)Chrome浏览器自定义背景插件
107 0
|
6月前
|
Web App开发 开发者
利用chrome控制台调试post请求
利用chrome控制台调试post请求
162 0
|
6月前
|
Web App开发 JSON 编解码
【其他】Chrome 灵魂插件!爱了爱了!提高工作效率的神器!
【其他】Chrome 灵魂插件!爱了爱了!提高工作效率的神器!
86 0
【其他】Chrome 灵魂插件!爱了爱了!提高工作效率的神器!
|
7月前
|
Web App开发 开发者
Mac Chrome crx(插件) 文件导出与导入
Mac Chrome crx(插件) 文件导出与导入
237 0
|
3月前
|
Web App开发 前端开发
Chrome 浏览器插件 V3 版本 Manifest.json 文件中 Action 的类型(Types)、方法(Methods)和事件(Events)的属性和参数解析
Chrome 浏览器插件 V3 版本 Manifest.json 文件中 Action 的类型(Types)、方法(Methods)和事件(Events)的属性和参数解析
156 0
|
21小时前
|
Web App开发 搜索推荐 前端开发
【热门话题】Chrome 插件研发详解:从入门到实践
本文详细介绍了Chrome插件的开发,从基础概念到实战技巧。首先,解释了插件的结构,包括manifest.json、背景脚本、内容脚本和UI界面。接着,阐述了生命周期、通信机制以及开发步骤,包括创建项目结构、编写manifest.json、开发脚本和UI,以及测试与调试。通过一个显示当前页面URL的插件实例,展示了具体实现过程。最后,讲解了如何在Chrome Web Store发布和分发插件。Chrome插件开发为开发者提供了创造个性化体验的平台,本文旨在引导读者入门并深入实践。
11 2