Chrome 浏览器扩展,用于在亚马逊页面自动采集 ASIN 并上传至后端 API。
chrome://extensions/browser-extension-asin-scraper 目录https://njdk.xyz:18012/api/upload-asins快速访问亚马逊站点 (v2.1.0 新功能 🌍)
打开亚马逊搜索页面
启动扩展
开始采集
查看结果
暂停采集
取消采集
重置状态
Windows (PowerShell):
cd browser-extension-asin-scraper
.\test-api.ps1
Linux/Mac (Bash):
cd browser-extension-asin-scraper
chmod +x test-api.sh
./test-api.sh
# 测试健康检查
curl https://njdk.xyz:18012/health
# 测试 API 上传
curl -X POST https://njdk.xyz:18012/api/upload-asins \
-H "Content-Type: application/json" \
-d '{
"asinList": ["B08N5WRWNW"],
"site": "US",
"source": "test"
}'
如果遇到问题,请参考 故障排查指南
browser-extension-asin-scraper/
├── manifest.json # 扩展配置
├── src/
│ ├── background/
│ │ └── service-worker.js # 后台服务(API 调用)
│ ├── content/
│ │ └── content-script.js # 内容脚本(ASIN 提取)
│ ├── popup/
│ │ ├── popup.html # 弹出窗口界面
│ │ ├── popup.js # 弹出窗口逻辑
│ │ └── popup.css # 样式
│ └── utils/
│ └── constants.js # 常量配置
├── icons/ # 扩展图标
├── test-api.sh # Linux/Mac 测试脚本
├── test-api.ps1 # Windows 测试脚本
├── TROUBLESHOOTING.md # 故障排查指南
└── README.md # 本文件
Amazon 页面
↓ (content-script.js 提取 ASIN)
Content Script
↓ (chrome.runtime.sendMessage)
Background Service Worker
↓ (fetch API)
Backend API (https://njdk.xyz:18012)
↓
PostgreSQL 数据库
| 消息类型 | 发送者 | 接收者 | 用途 |
|---|---|---|---|
START_SCRAPING |
Popup | Content Script | 开始采集 |
SCRAPING_PROGRESS |
Content Script | Background | 更新进度 |
SCRAPING_COMPLETE |
Content Script | Background | 采集完成 |
SCRAPING_CANCELLED |
Content Script | Background | 采集取消 |
UPLOAD_COMPLETE |
Background | Popup | 上传成功 |
UPLOAD_ERROR |
Background | Popup | 上传失败 |
GET_PAGE_INFO |
Popup | Content Script | 获取页面信息 |
修改代码
cd browser-extension-asin-scraper/src
# 编辑文件
重新加载扩展
chrome://extensions/调试
chrome://extensions/ → 点击 Service Worker更新版本号
// manifest.json
{
"version": "2.0.3"
}
测试功能
./test-api.ps1 # Windows
./test-api.sh # Linux/Mac
打包扩展
chrome://extensions/请求:
POST https://njdk.xyz:18012/api/upload-asins
Content-Type: application/json
{
"asinList": ["B08N5WRWNW", "B08N5KWB9H"],
"timestamp": "2024-01-01T00:00:00.000Z",
"source": "amazon-asin-scraper",
"version": "2.0.2",
"site": "US",
"marketplace": "ATVPDKIKX0DER",
"url": "https://www.amazon.com/s?k=laptop",
"category": "Electronics",
"categoryId": "172282",
"searchKeyword": "laptop",
"totalResults": "50000",
"sellerId": null,
"sellerName": null,
"collectionStats": {
"totalAsins": 2,
"collectedAt": "2024-01-01T00:00:00.000Z"
}
}
响应:
{
"success": true,
"message": "ASIN data uploaded successfully",
"count": 2,
"uploadedAt": "2024-01-01T00:00:00.000Z",
"metadata": {
"site": "US",
"category": "Electronics",
"searchKeyword": "laptop",
"totalResults": "50000"
}
}
runtime.lastError 异步消息错误欢迎提交 Issue 和 Pull Request!
请提供以下信息:
请描述:
MIT License
如有问题,请参考:
test-api.ps1 或 test-api.shHappy Scraping! 🚀