feat: 开发采集插件

This commit is contained in:
R524809
2026-08-11 17:09:23 +08:00
parent 6c4356de24
commit b27e42dc75
148 changed files with 6898 additions and 9691 deletions
+102
View File
@@ -0,0 +1,102 @@
# Seller Helper - 1688/淘宝采集插件
采集 1688/淘宝商品信息和图片到本地文件夹。
## 快速开始
```bash
cd extension
pnpm install
pnpm dev
```
然后:
1. 打开 Chrome 扩展管理页面:`chrome://extensions/`
2. 开启"开发者模式"
3. 点击"加载已解压的扩展程序"
4. 选择 `extension/.output/chrome-mv3`
## 使用
1. 打开任意 1688 或淘宝商品页
2. 点击扩展图标,打开侧边栏
3. 点击"开始采集"
## 目录结构
```
extension/
├── entrypoints/
│ ├── background.ts # Service Worker(代理图片 fetch
│ ├── sidepanel/ # 采集控制 UI
│ └── content/ # 注入到商品页
├── src/
│ ├── profiles/
│ │ ├── types.ts # SiteProfile 类型定义
│ │ └── 1688.ts # 1688 采集配置(生产验证)
│ ├── collector/
│ │ └── url.ts # URL 工具(CDN 后缀处理)
│ └── schema/
│ └── product.ts # product.json 类型
├── wxt.config.ts
└── package.json
```
## 当前状态
**M1 完成** - 采集引擎核心
- ✅ 1688 profile(选择器来自 v1.1.8 生产 bundle
- ✅ 淘宝 profile(复用阿里系 CDN 规则)
- ✅ URL 工具链(CDN 后缀处理、去重 key)
- ✅ 图片提取(主图/SKU/详情/视频)
- ✅ 文本提取(标题/价格/参数表/描述)
- ✅ DOM 等待 + Shadow DOM 穿透
- ✅ Side Panel UI(展示采集结果)
- ✅ Console 可测试:`window.__SellerHelper.scan()`
🔨 **待实现(M3**
- [ ] File System Access 写盘(选目录 + 生成 product.json
- [ ] sources.json 去重(二次采集追加不重复)
- [ ] 图片批量勾选与预览
- [ ] 文件夹管理(新建/切换)
## 测试方法
### 方法 1: Side Panel(推荐)
1. 打开任意 1688/淘宝商品详情页
2. 点击扩展图标 → Side Panel 打开
3. 滚动页面到底部(加载详情图)
4. 点击"开始采集"
5. 查看采集结果(文本数量、图片分组统计、警告)
### 方法 2: Console 测试
```js
// 在 1688/淘宝商品详情页的 Console 中执行
const result = await window.__SellerHelper.scan();
console.table(result.texts);
console.table(result.images);
console.log('stats:', result.stats);
console.log('warnings:', result.warnings);
```
## 采集重点
**必采**(高价值 + 高成功率):
- ✅ 标题(100%
- ✅ 主图(100%
- ✅ SKU 图 + 规格名(95%
- ✅ 详情图(90%,需滚动)
- ✅ 视频(80%
**可选**(保留在 `_raw` 供 studio 参考):
- 🟢 价格(90%
- 🟢 参数表(80%)—— 1688 的参数不对应 Ozon 属性 ID
- 🟢 详情文案(70%)—— 中文,需翻译
## 相关文档
- [总体架构](../../docs/architecture.md)
- [1688/淘宝实施计划](../../docs/extension/1688-taobao-implementation.md)
- [插件原方案](../../docs/extension/plan.md)1688 插件逆向分析)