# 电动工具知识库

> 竞品型号参数库：17 个品牌官网爬下来的 3870 条型号 + 产品图，用来做选型对比和安规判定前的参数确认。
> 最后更新：2026-11-04

## 一、这个库是什么

| 项 | 内容 |
|---|---|
| 数据来源 | 17 个品牌官网产品页，`电动工具爬虫/` 下的 `crawler_*.py` |
| 型号总数 | **3870 条**，29 个字段 |
| 品牌覆盖 | **国内 10 个 + 国外 7 个**（见下表，国外还差 3 个没爬） |
| 图片 | 原图 5415 张 / 1.22 GB；站内缩略图 3750 张 / 19.6 MB（目录含索引 21.8 MB） |
| 用途 | 竞品参数对比、按型号查规格、给测试选样品 |

## 二、目录里有什么

```
电动工具爬虫/                    根目录 68 个文件（其中 58 个 .py）+ output/ 76 个产物
  output/电动工具产品型号参数总表.xlsx   ★ 主表：汇总 + 17 个品牌 sheet，3870 行 × 29 列
  output/全部品牌产品型号表.xlsx         早期版本
  output/<品牌>_产品数据.json            每品牌的原始爬取结果
  images/                        14 个品牌的图片（与 图片库/images 是同一批，纯重复）
  brands/ brand_logo/            品牌配置和 logo SVG
图片库/                          5415 张原图 / 1.22 GB（images 4181 + 东成品牌 1217 + brands 18）
缩略图库/                        ★ 2026-11-04 新建：3750 张 320px WebP / 21.8 MB + 图片索引.json
产品目录/                        8 份品牌综合目录 PDF / 181 MB（东成交流+直流、DCA202603、博世2022、喜利得、美沃奇2025、greenworks、HiKoKi）
竞品信息/                        格力博 2025 年报.pdf、锐奇.pdf 等 3 个文件 / 6.7 MB
型号数据库/                      4 个早期 xlsx（东成 ×2、DCA、DCK）
```

## 三、现状（实测数字）

### 品牌覆盖

| 国内（10 个，齐） | 条数 | 国外（7 个，缺 3） | 条数 |
|---|---|---|---|
| 得力 | 360 | 得伟 | 593 |
| 格力博 | 360 ⚠️ | 史丹利 | 448 |
| 东成 | 333 | 博世 | 415 |
| 大有 | 178 | 麦太保 | 264 |
| 博大 | 147 | 高壹工机 | 134 |
| DCA | 113 | 喜利得 | 107 |
| 威克士 | 113 | 美沃奇 | 101 |
| 大艺 | 86 | | |
| DCK | 63 | | |
| 锐奇 | 55 | | |

`电动工具爬虫/generate_full_excel.py` 里的 `BRAND_SOURCES` 写死了这 17 个品牌 —— **国外另外 3 个从来没爬过，不是丢在哪个角落**。候选：牧田 Makita、费斯托 Festool、泛音 Fein、福莱克斯 FLEX、AEG。

源表「汇总」sheet 里各品牌的参数丰富度差别很大（有参数 / 有功率 / 有电压 / 有重量）：

| 品牌 | 条数 | 有参数 | 有功率 | 有电压 | 有重量 |
|---|---|---|---|---|---|
| 史丹利 | 448 | 213 | 0 | 7 | 51 |
| 得力 | 360 | 84 | 0 | 1 | 0 |
| 东成 | 333 | 202 | 0 | 168 | 17 |
| 麦太保 | 264 | 264 | 0 | 88 | 264 |
| 得伟 | 593 | 337 | 0 | 228 | 249 |
| 博世 | 415 | 393 | 171 | 163 | 272 |
| 格力博 | 360 | 360 | 150 | 360 | 333 |
| 全表 | 3870 | 2890 | 546 | 1570 | 1840 |

格力博那几个数字看着漂亮，其实是俄文串占的位（见第六节），不能当真。参数最实在的是博世、麦太保、喜利得、美沃奇。

### 字段填充率（3870 条里有多少条真有值）

| 字段 | 有值 | 说明 |
|---|---|---|
| 产品名称 / 分类 / 官网链接 | 100% | 都有 |
| 型号 | 97% | 318 条原来填的是商品 ID，已挪到 `商品ID` 字段 |
| 产品图 | **79%**（3066 条） | 缩略图挂接后 |
| 完整规格参数 | 75% | 官网详情页整段抓下来的 |
| 重量 | 45% | |
| 空载转速 | 40% | |
| 额定电压 | 37% | |
| 电源类型 | 35% | |
| 电池容量 | 15% | |
| 额定功率 | 10% | 东成 sheet 实测 0%，官网没这个字段 |
| 转矩 / 电池电压 | 7% | |
| 冲击频率 | 5% | |
| 冲击能量 | 2% | |
| **价格** | **0%** | 爬虫没抓价格，源表整列为空 |

### 图片压缩结果

| | 原图 | 缩略图 |
|---|---|---|
| 张数 | 5415 | **3750**（MD5 去重后） |
| 体积 | 1.22 GB | **19.6 MB（1.6%）**，平均 5.3 KB/张；目录含索引共 21.8 MB |
| 规格 | 原始尺寸 JPG | 320px WebP，quality 72 |

## 四、进度

- [x] 17 个品牌爬虫、3870 条型号入库
- [x] 图片压缩入库：1.22 GB → 21.8 MB，3066 条型号挂上图
- [x] 站点查询页可搜（`company/gongchengbu/知识库/查询/查询.html?scope=models`）
- [ ] **国外补齐到 10 个**（要新写 3 个爬虫，得先定爬哪几家）
- [ ] **格力博重爬**：现有 360 条来自俄语站，参数列错位，要换成中文或英文站重抓
- [ ] 价格字段整列为空，要的话得单独抓
- [ ] 功率/转矩/电池这类关键参数填充率不到 40%，官网页面结构不一致，要补得逐品牌改解析
- [ ] `图片库/images` 和 `电动工具爬虫/images` 是同一批（0.73 GB 重复），可以清一份

## 五、怎么重建

```bash
# 1. 重新爬某个品牌
python 电动工具爬虫/crawler_dongcheng.py

# 2. 汇总成总表
python 电动工具爬虫/generate_full_excel.py

# 3. 重压图片（增量，只处理新增/改动的）
python ../company/gongchengbu/知识库/_脚本/build_thumbs.py --src 图片库 --out 缩略图库

# 4. 重新导出站点查询数据
python ../company/gongchengbu/知识库/_脚本/build_kb_data.py
```

`build_thumbs.py` 可选 `--side 240 --quality 65` 再砍一半体积，或 `--reindex` 只重建索引不重压。

## 六、用之前必须知道的四个坑

1. **格力博这 360 条基本是废数据。** 350 行（97%）是从俄语页面抓的：产品名称是 `G40HT61 Комплект: Кусторез` 这种，电压列写着 `Нет`（否）、功率和电流列写着 `1 батарея`（1 块电池）。列位整体错位，别拿它做参数对比。全表 3870 行里含俄文的只有这 350 行，其他 16 个品牌干净。
2. **`额定功率(W)` 列 546 个非空值里有 409 个不是数字**（`400 W`、`3 650 / 3 850 / 4 050` 这种带单位或多档写法，加上上面那 90 个俄文串）。导出时按数字解析，只有 383 条落成有效功率值。
3. **318 条的「产品型号」列原本是商品 ID**（形如 `东成-1641179325156`），导出时已挪到 `商品ID` 字段并从名称里回解真实型号，但源表里还是错的。
4. **数据是 2026 年某个时点的快照**，官网下架、改型号、改参数都不会自动同步；参数填充率低主要是官网页面本身没写，不是漏爬，判关键参数前最好回官网链接核对。
