更干净的页面。更少的追踪器。仅本地运行。
GetBlocked! 是一款轻量级、仅本地运行的 Chrome 扩展程序,它通过拦截已知的追踪器请求、清理追踪链接并解释追踪尝试来帮助减少常见的第三方网站追踪。
它被构建为一个可检查的 Manifest V3 项目,适合想使用友好隐私工具的用户,也适合希望快速提交有价值拉取请求的贡献者。
declarativeNetRequest 拦截一组精心挑选的已知第三方追踪器域名。utm_source、fbclid、gclid、dclid、mc_cid 以及类似的广告活动 ID。chrome.storage.local 中。GetBlocked! 拦截一组精心挑选的已知第三方追踪器域名和追踪 URL 参数。
当前覆盖范围包括:
追踪器列表有意保持保守。规则仅限于第三方请求,以减少网站异常。
GetBlocked! 具备以下特点:
GetBlocked! 不会将浏览数据发送到任何服务器。该扩展使用:
declarativeNetRequest 由 Chrome 本地管理请求拦截。chrome.storage.local 存储页面报告数据。该扩展中没有外部分析、遥测端、远程日志或捆绑的远程资源。
chrome://extensions。生产版本会避免仅调试的 DNR 反馈权限。弹出窗口使用本地页面信号加上 Chrome 生产 DNR 动作计数徽章作为页面级估算,而拦截和 URL 清理规则仍由 MV3 的 declarativeNetRequest 执行。
最简单的贡献方式是添加一个追踪器域名。
npm run generate:rules。npm run test:evidence。欢迎提交关于追踪器域名添加、网站异常测试、UI 打磨、文档和测试改进的 PR。在提交小型、有针对性的 PR 之前无需事先询问。
追踪器域名维护在 shared/tracker-catalog.json 中。
每个追踪器条目包括:
domaincategorylabelnotes追踪 URL 参数维护在 shared/tracking-params.json 中。
更改目录或追踪参数列表后,重新生成派生的扩展文件:
npm run generate:rules
此命令更新:
declarativeNetRequest 使用。请不要手动编辑生成的规则/配置,除非同时也更新生成器或源目录。
运行与 CI 相同的本地验证层:
npm run check
该命令会重新生成规则,运行验证测试数据,检查 JavaScript 语法,解析 JSON 数据文件,验证生成的文件是否同步,并运行隐私/安全防护检查。
有用的单独检查:
npm run generate:rules
npm run test:evidence
npm run check:syntax
npm run check:json
npm run check:generated
npm run check:safety
加载已解压的扩展程序后,从该文件夹启动一个简单的本地服务器:
python -m http.server 8080
然后打开:
http://localhost:8080/test/manual-test.html?utm_source=demo&utm_medium=test&fbclid=manual
启用 GetBlocked! 后,跟踪参数应从页面 URL 中被移除,弹出窗口应显示页面级别的追踪器活动。如需前后对比,请比较禁用和启用扩展后浏览器网络面板的变化。
MIT 许可证。详见 LICENSE。