
简介这份Chrome谷歌浏览器专用的篡改猴Tampermonkey离线安装资源面向无法访问网上应用商店、需要在内网环境部署或将扩展批量安装到多台设备的用户。Tampermonkey本身不提供具体功能而是通过运行社区编写的JavaScript脚本来去除广告、调整页面布局、增强网站功能适合有一定网页定制需求的油猴爱好者。压缩包共82个文件约1.52MB包含31个json配置、29个png图标与界面素材、11个js逻辑脚本、5个html页面以及license、css、txt、md等说明与样式文件覆盖了扩展的配置数据、脚本逻辑、界面呈现和授权信息结构较完整便于了解Tampermonkey的组成方式。已有921人浏览学习。下载后即可获得可用于离线安装的Tampermonkey扩展文件配合脚本库或自建脚本可在Chrome中实现高度个性化的网页浏览体验对想研究扩展包目录结构和脚本管理原理的用户也是一份紧凑的参考样本。1. 篡改猴不是一个下载器先搞明白你装的是容器还是脚本很多朋友从论坛里下载了一个“篡改猴安装包”装完 Chrome 之后发现浏览器右上角多了一个黑红色图标然后就开始发懵这插件到底有什么用其实篡改猴Tampermonkey常被写作油猴或者拼成 tempermongkey本身不干任何“看得见”的事它是一个用户脚本管理器换句话说它是一个装了脚本才能跑的容器。你的需求——倍速看视频、抓网页数据、去水印、屏蔽页面干扰——全部由后续安装的“用户脚本”来实现。这篇文章就是要把从装插件、找脚本、调参数到排坑的完整路径给你理顺让你装完不是对着一个空图标发呆而是真正能把脚本用起来。2. Chrome 装上篡改猴商店安装与开发者模式两条路径2.1 从 Chrome 网上应用店安装一条命令都不用敲的路径常见做法是直接打开 Chrome 网上应用店在搜索框里输入 Tampermonkey找到标识为“Tampermonkey”的扩展点“添加至 Chrome”。安装完成后浏览器右上角出现篡改猴的图标这是最正规也最省心的路径后续更新由 Chrome 自动处理你在扩展管理页里基本不用操心。装完之后做一次确认在 Chrome 地址栏输入chrome://extensions/回车应该能看到 Tampermonkey 的卡片卡片上的开关处于开启状态。这里有个小提示如果你的公司电脑或校园网环境有统一的扩展策略商店安装可能会被拦下来弹窗提示“您的管理员已禁用安装”。这时候不要急着折腾先看看是不是真的被策略限制是的话直接走下面那条离线路径。2.2 开发者模式加载本地安装包离线安装的实操步骤网上流传的“篡改猴安装包”大多是 .crx 文件很多人直接双击或者拖进 chrome://extensions/ 页面结果 Chrome 报错“无法从该网站添加扩展”。这个报错根本原因是 Chrome 早就禁止了直接拖拽 .crx 安装第三方扩展正确姿势是先解压再加载。具体步骤把下载到的 .crx 文件放到一个固定目录比如D:\extensions\tampermonkey。把扩展包后缀名从.crx改成.zip然后用解压软件解压到上一步的目录里。打开chrome://extensions/。打开右上角的“开发者模式”开关。点击左上角“加载已解压的扩展程序”选择刚才解压出来的文件夹。这里需要注意解压后的目录里必须包含manifest.json文件选错了层级 Chrome 会提示“清单文件缺失或不可读取”。我一般会顺手看一眼 manifest.json 里的version字段确认安装包不是被第三方改过的版本。如果你在压缩包里看到什么“激活码”“使用说明.txt”我建议直接删除整个压缩包——正规的篡改猴扩展包只有代码文件不需要任何额外激活步骤。2.3 装完先验证一件事扩展管理页里的三个状态不管通过哪条路径装完都回到chrome://extensions/页面确认三件事开关是否开启、Tampermonkey 图标是否出现在浏览器工具栏、扩展卡片的“已读取并更改网站数据”提示是否符合预期。如果三样都正常说明插件本体没问题。如果插件装完但图标没出现可以点扩展页右下角的拼图图标把 Tampermonkey 固定到工具栏。这一步虽然琐碎但很多人忽略之后会误以为安装失败。3. 去 GreasyFork 找脚本安装、启用与版本更新3.1 脚本从哪来GreasyFork 是主阵地篡改猴本身没有内置脚本商店用户脚本主要来自 GreasyFork 这个社区脚本站另外 GitHub 上也有不少脚本。GreasyFork 上能搜到视频倍速、网页抓取、去水印、自动翻页、阅读模式这些高需求脚本。选脚本时不要只看安装量重点看两个东西最后更新日期和代码质量。如果一个脚本最近半年没更新而目标网站经常改版那大概率装上去之后会翻车。我自己的习惯是优先选“最后更新在三个月以内”的脚本哪怕安装量少一些至少作者的维护状态是活的。3.2 安装一个用户脚本的完整流程安装脚本不是下载文件而是让篡改猴接管运行。流程是在 GreasyFork 脚本详情页点绿色的“安装此脚本”按钮篡改猴会打开一个类似扩展源码页面的确认面板显示脚本名字、版本号、描述以及它需要访问的网站范围。确认面板里显示的内容很关键尤其是“适用于”那一行它决定了脚本在哪些网址上生效。确认之后点右上角“安装”这个脚本就进入篡改猴的“已安装脚本”列表了。这里有一个习惯值得养成在点“安装此脚本”之前先点脚本详情页右上角的“代码”按钮看一眼源码确认里面没有明显的外链请求或加密代码。觉得不放心但又想用这个脚本可以先把脚本下载到本地再导入# 在命令行中下载脚本源码注意替换脚本对应的路径 curl -L https://greasyfork.org/scripts/某个脚本/code/script.user.js -o local-script.user.js下载后打开篡改猴管理面板进入“实用工具”标签页在“导入”区域选择刚才保存的本地文件点“导入”。这样做的价值在于脚本代码以明文形式留在你的电脑上随时可以打开审查。注意下载时如果看到重定向到其他域名直接中止操作这种脚本通常有问题。3.3 脚本的启用、停用与匹配规则打开篡改猴管理面板的方式是点工具栏图标再点“管理面板”。面板里列出了所有已安装脚本每一行显示脚本名称、适用域、运行状态。状态开关是那一行右侧的滑块关掉它脚本立即停止运行但不会被删除。我经常用这个开关来分步排查问题怀疑某个脚本导致页面卡顿时先关掉它刷新页面如果恢复正常基本能锁定责任方。适配范围是另一个值得理解的字段它来源于脚本元数据里的match声明声明了脚本能跑在哪些域名上。比如一个脚本只匹配https://example.com/*那么打开其他网站时篡改猴图标会变灰这是正常现象不是坏了。反过来如果你的页面明明匹配却图标灰色需要检查脚本的启用开关和浏览器页面是否刷新过——旧页面不会自动注入新安装的脚本必须手动刷新一次才能看到效果。4. 篡改猴设置里的关键参数更新频率、存储模式与运行时机4.1 更新检查频率脚本失效的预防针篡改猴的更新机制是轮询脚本元数据里的更新地址。默认的检查频率比较保守但对于高频使用的脚本来说我建议改成“每天”甚至“每 12 小时”。路径点篡改猴图标 → 管理面板 → 右上角设置齿轮图标 → “通用 → 更新检查频率”。频率选项适合场景我的建议每 12 小时高频脚本、目标站经常改版适合视频站脚本每天大多数日常脚本默认够用每周很少使用的脚本减少打扰手动不想让脚本频繁变动适合已经稳定的核心脚本设成高频之后脚本作者发布新版本时你会在篡改猴图标上看到一个数字角标提示更新可用。去管理面板里点“检查更新”更新前可以注意一下脚本的版本号变化避免作者改坏的情况下自动更新到坏版本。4.2 存储模式localStorage 上限不够用时的选择篡改猴脚本可以用GM_setValue和GM_getValue在本地保存数据比如记住你上次看视频的倍速、记住某个开关状态。这些数据存到哪里取决于篡改猴的设置项“存储模式”位置在“通用 → 存储模式”常见选项是本地存储localStorage和 IndexedDB。我一般会直接选 IndexedDB。原因是 localStorage 有容量上限数据写多了之后容易出现读写失败而 IndexedDB 的容量大得多而且 Chrome 对它的清理策略更友好。如果你同时装了多个浏览器注意存储模式变更后脚本通过GM_*读取到的数据是各自独立的不会自动跨浏览器同步。想要同步数据需要脚本作者额外接入云同步这是另一层话题。4.3 脚本运行模式文档结束时注入为什么最稳“脚本运行模式”在设置里其实属于高级选项但它决定了很多脚本是不是会“看到页面时已经太晚了”。全局运行模式的选项一般是这三类立即注入在页面文档刚开始解析时就执行脚本适合拦截请求、提前注入样式这类需求。文档结束在 DOM 解析完成后注入此时大部分元素已经存在。页面空闲在页面 onload 之后注入适合不着急跑的脚本。如果你不知道选什么我建议全局模式保持“文档结束”。这个模式在“元素是否已经存在”和“脚本是否执行得太晚”之间取得了最好平衡。给一个具体场景你的脚本要对页面里所有视频设置倍速如果脚本在document-start就执行此时video元素可能还没被解析出来document.querySelectorAll(video)返回空数组脚本等于白跑。而document-end时 DOM 解析完成视频元素基本都在了。单个脚本可以通过元数据里的run-at覆盖全局设置。例如需要提前拦截请求的脚本在代码头部加上这一段// UserScript // name 请求拦截演示 // match https://video-site.com/* // run-at document-start // grant none // /UserScript (function() { use strict; // 此时 document.body 可能还不存在 // 所以不要在这里直接操作 DOM。 })();注意我代码注释里写的坑document-start时document.body可能为null想操作 DOM 必须等DOMContentLoaded事件。很多新手把全局模式改成“立即注入”后脚本各种报错就是因为没理解这一点。全局设置和单脚本设置同时存在时开发者工具里看脚本执行顺序最直观CtrlShiftI 打开控制台在脚本里加上console.log(脚本已执行)刷新页面看打印时机就能判断注入时机对不对。5. 篡改猴常见问题与避坑5 条高频踩坑记录5.1 脚本装了但页面没反应先刷新再怀疑安装现象新安装的脚本明明显示已启用打开目标网站却看不到任何效果。原因这是最高频的坑不是脚本坏了而是页面在脚本安装之前已经打开Chrome 不会把新注入的脚本塞进一个已经加载完的页面。解决在目标页面按一次 F5 或者 CtrlR 强制刷新脚本立刻生效。如果刷新后依然没反应再检查管理面板里脚本的适用域写的是不是当前网址match对子域名是严格匹配的https://a.com/*不会作用于https://www.a.com/*。5.2 扩展被浏览器自动停用开发者模式扩展在重启后躺尸现象用本地解压方式装的篡改猴第二天打开 Chrome 发现图标灰了管理面板提示“此扩展程序可能已损坏”或者直接没出现在列表里。原因新版 Chrome 对开发者模式加载的扩展有加固策略凡是没上架官方商店的扩展重启后可能被自动停用这是浏览器层面的安全设计不是你的安装操作有问题。解决最省心的路径是卸载本地版去 Chrome 网上应用店装官方版如果一定要用本地版每次重启后手动回到chrome://extensions/重新开启一次开关。这个坑没有绕过的好办法别相信某些教程说的“关掉自动更新就能解决”。5.3 脚本更新后反而失效作者改坏了或站点改版了现象某天脚本自动更新到新版本结果原本正常的功能突然失效甚至页面报错。原因脚本更新后要么作者引入了 bug要么目标网站的页面结构变了但作者没跟上。解决先回退版本。在管理面板里找到该脚本点名称右侧的编辑按钮进入脚本编辑器左侧能看到元数据把version改回之前能用的版本号再点“文件 → 保存”。如果篡改猴设置里开的是自动更新回退后它可能很快又帮你更上来所以回退完顺手把这个脚本的自动更新关掉。我的习惯是对于已经用得顺手的核心脚本一律在脚本编辑页里删掉updateURL字段让它彻底不再自动更新。5.4 篡改猴占内存越来越高一条 setInterval 让网页变成电暖器现象装了 N 个脚本后浏览器打开一个普通网页内存占用比没装时高出几百 MB风扇开始狂转。原因部分脚本为了轮询数据或监控 DOM 变化用了高频setInterval或者不停创建的MutationObserver没有及时清理。解决一个个停用脚本每停一个刷新一次页面观察内存占用。定位到凶手脚本后去脚本编辑器里搜索setInterval把间隔时间从几百毫秒改成几秒或者加一个页面不可见时暂停的逻辑。技巧是给MutationObserver加上disconnect()调用在脚本做完初始化监听后及时释放。5.5 图标正常但页面没有任何脚本运行协议匹配的陷阱现象篡改猴图标显示红色数字角标说明有脚本匹配了当前页面但页面上确实没有脚本运行的效果。原因常见在 http 和 https 混用场景脚本元数据里只写了match http://example.com/*而目标页面是https://example.com/协议不匹配导致脚本实际上没跑。解决打开管理面板看脚本的适用域是否正确把match改成*://example.com/*这个写法同时匹配 http 和 https。修改后记得回到页面刷新一次。6. 写第一个脚本以视频倍速为例的元数据与逻辑6.1 视频倍速脚本一个能跑的最小实现调试脚本最直接的需求就是“网页视频倍速播放”很多站点播放器没有 2 倍速选项自己写一个比找现成脚本更能理解篡改猴的工作方式。下面这个脚本我亲手在不同视频站上试过逻辑很短但足够说明问题。// UserScript // name 全局视频倍速 // namespace local-scripts // version 0.1.0 // description 页面加载后把所有 video 元素倍速设为 2 倍 // match *://*/* // run-at document-end // grant none // /UserScript (function() { use strict; function setSpeed() { document.querySelectorAll(video).forEach(function(video) { video.playbackRate 2.0; }); } setSpeed(); // 部分视频是页面加载完才动态创建的 // 再加一个轻量的定时器兜底5 秒后自动停止。 const timer window.setTimeout(function() { setSpeed(); window.clearTimeout(timer); }, 3000); })();代码逻辑分三块match *:///*声明匹配所有 http/https 网页run-at document-end确保 DOM 解析完成后再执行setSpeed()函数负责把页面上所有 video 标签的播放速度改成 2 倍setTimeout兜底是因为不少视频网站是异步加载播放器页面刚解析完时 video 元素还没出现。要注意match *:///*不会匹配file://协议的本地页面想在本地 HTML 上测试就写match file:///*.html。这个脚本本身很基础但它把篡改猴脚本的三个必调参数都体现了match控制生效范围run-at控制执行时机grant none表示不需要额外的浏览器权限。实际使用中更成熟的视频倍速脚本一般会加一个监听器来响应动态添加的 video 元素而不是用定时器兜底还会用GM_registerMenuCommand在菜单里加一个倍速选择项让用户不用改代码就能切速度。这些都属于把第一个脚本跑通之后自然延伸出来的方向。我自己的习惯是永远保留一份最小脚本在手边比如这个倍速脚本出了新网站想试注入时直接在match里加一行就能探测篡改猴到底有没有正常工作比反复排查图标状态高效得多。希望这篇笔记能帮你把篡改猴从“装着吃灰”变成真正能动手改造网页的工具。本文还有配套的精品资源点击获取