JavaScript · 项目报告

Shpigford/knockoff

Chrome extension that filters pseudo-brand junk out of Amazon. Buy from real, established brands.

已完成 打开 GitHub
S
1,805星标
59Fork
8Issue
NOASSERTION许可证

分析结果

项目分析

Knockoff 是一个用于 Amazon(亚马逊)购物页面的浏览器扩展,主要功能是在搜索结果和商品详情页中识别、隐藏、淡化或标记疑似“伪品牌”“贴牌垃圾品牌”商品,帮助用户优先购买真实、成熟、有信誉的品牌。项目以 Chrome 扩展为主,同时提供 Safari 的 Xcode 包装项目。核心逻辑在本地 content script 中运行,不依赖购物路径上的服务器请求,强调隐私和低延迟。

适用领域 浏览器扩展 / 电商购物辅助 / Amazon 商品过滤 / 品牌识别 / 反垃圾商品 / 前端 JavaScript / Chrome Extension Manifest V3 / Safari Extension / Cloudflare Worker
配置难度 中等。对于普通用户,安装和使用难度较低;对于开发者,项目没有复杂构建链,主要是 JavaScript、Manifest V3、DOM 操作和规则判断,入门相对容易。但如果要长期维护识别准确率、适配 Amazon 多站点页面结构、减少误判并运营上报系统,则需要较强的产品、数据和规则治理能力。
商业价值 该项目的商业价值主要体现在提升 Amazon 购物体验、减少低质商品干扰和增强用户对品牌可信度的判断。对消费者工具、浏览器扩展、购物返利/导购平台、电商品控分析团队都有参考价值。它也可以作为品牌治理、商品质量筛选、规则引擎和本地隐私优先扩展的原型。不过直接商业化需要重点评估许可证、品牌误伤、地域或国别偏见、Amazon 平台政策以及用户数据合规问题。
01

技术亮点

  • 无构建步骤,主要是原生 JavaScript,适合直接加载和二次开发。
  • 核心检测逻辑在本地运行,不需要用户账号,不在购物路径上进行服务器往返请求。
  • 规则链清晰:用户白名单、用户黑名单、伪品牌种子列表、中国成熟品牌列表、已知品牌列表、名称启发式检测。
  • 支持大约 5000 个成熟品牌列表,并结合社区 AmazonBrandFilterList。
  • 提供多种过滤动作:隐藏、淡化、打标签,兼顾强过滤和用户可控性。
  • 每个标签可点击,用户可以信任品牌、屏蔽品牌、临时显示商品或上报误判。
  • 产品详情页只显示 verdict chip,不会强制隐藏整个页面,降低破坏浏览体验的风险。
  • 检测规则 src/detector.js 可读性较强,适合贡献者调参。
  • 项目覆盖 Chrome 和 Safari,具备跨浏览器扩展潜力。
  • README 对局限性说明较诚实,包括非英语市场、混合大小写伪品牌、特殊商品卡片布局等问题。
02

目标用户

  • 经常在 Amazon 购物、希望减少低质贴牌商品干扰的消费者
  • 希望购买真实品牌、成熟品牌而非随机商标品牌的用户
  • 关注购物体验和商品可信度的浏览器扩展用户
  • 想研究 Chrome 扩展内容脚本、DOM 扫描和本地规则识别的开发者
  • 希望维护品牌黑白名单、改进识别规则的开源贡献者
  • 电商风控、商品质量分析、品牌治理相关团队
03

配置要求

  • Chrome 浏览器需要支持 Manifest V3 扩展。
  • 开发模式安装需要在 chrome://extensions 中开启 Developer mode。
  • Safari 版本需要支持 Safari Web Extension,并需要 macOS + Xcode 环境。
  • 扩展可配置过滤级别:Relaxed、Standard、Strict。
  • 可配置处理方式:隐藏、淡化、仅打标签。
  • 支持用户维护 allowlist,加入后品牌永远不会被过滤。
  • 支持用户维护 blocklist,加入后品牌总是会被过滤。
  • 可选择是否将已知中国品牌作为过滤对象,README 中提到 established Chinese-owned brands 是可切换策略。
  • 误判上报功能如果没有配置 endpoint,会退化为打开预填 GitHub issue。
  • 如果部署自己的误判上报接口,需要 Cloudflare Worker 和 D1,相关代码位于 report-worker/。
04

适用场景

  • 在 Amazon 搜索结果页自动隐藏疑似伪品牌商品
  • 将可疑商品淡化显示,用户悬停后可恢复查看
  • 给商品添加品牌可信度标签,而不是直接隐藏
  • 在商品详情页显示品牌判断结果,但不阻止用户浏览页面
  • 用户自定义 allowlist 和 blocklist,手动信任或屏蔽某个品牌
  • 根据过滤级别选择宽松、标准或严格模式
  • 上报误判结果,用于改进品牌列表和检测规则
  • 研究如何基于品牌名称特征进行启发式识别
  • 将项目作为 Chrome MV3 扩展开发范例
05

部署与配置

  • 普通用户可直接从 Chrome Web Store 安装:访问项目 README 中的 Add to Chrome 链接。
  • 开发者本地调试:克隆 GitHub 仓库到本地。
  • 打开 Chrome 浏览器并访问 chrome://extensions。
  • 右上角开启 Developer mode(开发者模式)。
  • 点击 Load unpacked(加载已解压的扩展程序)。
  • 选择该仓库根目录,即可作为未打包扩展运行。
  • Safari 本地调试:打开 safari/Knockoff/Knockoff.xcodeproj。
  • 在 Xcode 中运行 Knockoff scheme。
  • 进入 Safari → Settings → Extensions 启用 Knockoff。
  • 如果是未签名本地构建,需要先在 Safari 的 Develop 菜单中允许 unsigned extensions。
  • 修改扩展文件后,如需同步到 Safari 项目,运行 scripts/sync-safari.sh。
06

风险与注意事项

  • 品牌误判风险较高:启发式规则可能将新兴品牌、小众品牌或非英语品牌误判为可疑。
  • 对中文开发者或中国品牌相关业务较敏感:项目包含对 established Chinese-owned brands 的特殊列表和可切换策略,若用于商业场景需要谨慎处理偏见和合规问题。
  • README 中称许可证为 FSL-1.1-MIT,但仓库元数据为 NOASSERTION,商业使用前应人工核验 LICENSE 文件。
  • 规则主要针对英语品牌名称,非英语 Amazon 站点效果可能不稳定。
  • 不做卖家国家或公司背景查询,因此无法从根本上验证商品真实来源。
  • Amazon 页面结构经常变化,DOM 选择器可能失效,需要持续维护 TILE_SELECTORS 等扫描逻辑。
  • Carousels 和部分特殊商品卡片布局尚未完全支持。
  • 依赖品牌列表质量,列表老化或社区数据错误会影响体验。
  • 如果启用误判上报端点,需要注意数据保护、速率限制和后端安全。
  • Chrome Web Store 政策变化或 Amazon 页面反爬/反扩展策略可能影响扩展可用性。

历史记录

热榜历史快照

2026-07-13 第2名 新收录 · github_search
2026-07-12 第2名 新收录 · github_search
2026-07-11 第3名 新收录 · github_search
2026-07-10 第4名 新收录 · github_search
2026-07-09 第5名 新收录 · github_search
2026-07-08 第18名 新收录 · github_search