Amazon Product Scout Agent
多轮选品侦察兵:在同一对话中多轮获取亚马逊商品,翻页续接不重复拉取,跨条件去重过滤已见 ASIN,智能推荐不重叠的换条件方案。
核心概念
三大机制:
| 机制 | 触发场景 | 行为 |
|---|---|---|
| 翻页续接 | 同条件继续要货 | 从上次最后一页+1开始,SQLite 记录 last_page |
| 跨条件去重 | 换了筛选条件 | 从第1页开始,SQLite 过滤已见 ASIN,只输出新商品 |
| 智能条件推荐 | 翻完或用户想换方向 | 基于API枚举推荐不重叠方案,等用户确认后执行 |
数据源:linkfox-sellersprite-product-search(卖家精灵选产品)
定时任务:配合 linkfox-task-scheduler 可实现每小时/每天自动选品
输出格式:CSV only,禁止 HTML 报告
支持站点:US, UK, DE, FR, JP, CA, IT, ES, MX, IN
参数指南
核心参数
| 参数 | 类型 | 说明 | 默认值 |
|---|---|---|---|
| marketplace | string | 站点代码 | US |
| listedWithinLastMonths | int | 上架时间(月),枚举: 1/3/6/12/24 | 3 |
| minPrice / maxPrice | number | 价格区间 | - |
| maxWeights / minWeights | number | 重量区间 | - |
| weightUnit | string | 重量单位: g/kg/oz/lb | g |
| minUnits | int | 最低月销量 | - |
| fulfillment | string | 配送: AMZ/FBA/FBM | - |
| sellerNation | string | 卖家国籍: CN/HK/US等 | - |
| order.field | string | 排序字段(16种) | total_units |
| order.desc | string | "true"降序/"false"升序 | "true" |
排序字段枚举(16种)
total_units, total_amount, bsr_rank, price, rating, reviews, profit, reviews_rate, available_date, questions, total_units_growth, total_amount_growth, reviews_increasement, bsr_rank_cv, bsr_rank_cr, amz_unit
扩展参数
支持 linkfox-sellersprite-product-search 的全部参数,详见 references/api-params-catalog.md。
工作流
调用方式
# 默认运行(使用上次条件或初始默认)
python3 scripts/product_scout_agent.py
# 带参数运行
python3 scripts/product_scout_agent.py --marketplace UK --min-price 10 --max-price 30 --max-weight 500 --weight-unit g --min-units 151 --fulfillment FBA --seller-nation CN --listed-within-months 3
# 从参数文件运行
python3 scripts/product_scout_agent.py --params params.json
# 查看状态
python3 scripts/product_scout_agent.py --status
# 查看条件推荐(12大类91个选项)
python3 scripts/product_scout_agent.py --suggest
# 生成模板参数文件
python3 scripts/product_scout_agent.py --init-params
# 导出全部唯一 ASIN 为 CSV
python3 scripts/product_scout_agent.py --export-all
# 重置所有状态
python3 scripts/product_scout_agent.py --reset
每轮执行流程
- 识别条件:计算 query_hash,判断是"同条件续接"还是"新条件查询"
- 翻页拉取:同条件从 last_page+1 开始;新条件从第1页开始。每轮3页×100条=300条
- 去重过滤:每条结果与 SQLite 中已见 ASIN 比对,只保留新商品
- 输出结果:CSV 导出 + Top10 预览 + NEXT_STEPS_JSON
- 智能推荐:基于API参数枚举,推荐3个不重叠的换条件方案
NEXT_STEPS_JSON 结构
每轮结束后输出结构化 JSON,供 agent 解析并告知用户:
{
"round": 1,
"this_round_new": 300,
"total_unique_so_far": 300,
"current_condition": "£10-30 | ≤500g | 月销>151 | 近3月新品 | FBA | 卖家CN",
"pagination": {
"status": "available",
"message": "当前条件还有更多商品可翻页获取",
"can_continue": true,
"next_page": 4
},
"alternatives": [
{"label": "价格跳跃 £30-50", "desc": "完全不重叠的更高价格区间", "overlap": "无"},
{"label": "扩重量 500-2000g", "desc": "打开更重品类空间", "overlap": "无"},
{"label": "提销量门槛>450", "desc": "只看更高销量的头部爆款", "overlap": "低"}
],
"already_explored": ["£10-30, ≤500g (翻到第3页)"],
"call_to_action": "回复「继续」在当前条件下翻页获取更多 | 或选择一个新方案编号"
}
Agent 使用指引
- 用户说"找商品":用默认条件或用户指定条件运行脚本第一轮,输出 CSV
- 用户说"继续"/"更多":同条件继续运行脚本(自动翻页续接)
- 用户说"换个条件":运行
--suggest获取推荐方案,用AskUserQuestion让用户选择 - 脚本输出"EXHAUSTED":告知用户当前条件已翻完,运行
--suggest推荐新方案 - 用户说"定时选品"/"每天自动跑":用
linkfox-task-scheduler创建定时任务 - 每轮结束后:解析 NEXT_STEPS_JSON,告知用户还有多少商品可翻页、有哪些备选方案
- 禁止生成 HTML 报告,所有结果只输出 CSV 数据
定时任务集成
配合 linkfox-task-scheduler 可实现自动化定时选品:
- 先用
--init-params生成参数文件 - 用
linkfox-task-scheduler创建定时任务,prompt 中包含脚本调用命令 - 每次定时执行自动续接上次翻页位置(SQLite 持久化)
- 结果 CSV 自动保存到会话目录
成本
每次 API 调用消耗 15 积分(由 linkfox-sellersprite-product-search 计费)。每轮3页=45积分。
定时任务成本:
- 每小时1轮 = 45积分/小时 = 1080积分/天
- 每2小时1轮 = 540积分/天
- 每天1轮 = 45积分/天
创建定时任务前必须告知用户成本并确认。
重要限制
- API 单页最多返回 100 条
- 同一参数组合有 24h 本地缓存
- SQLite 数据库持久化在会话目录,同一 SESSION_ID 下跨轮次有效
- 不同会话(SESSION_ID 变化)需重新建库
- 禁止生成 HTML 报告,所有结果只输出 CSV
输出文件
| 文件 | 路径 | 说明 |
|---|---|---|
| SQLite DB | <session>/data/scout_agent.db |
去重库+查询状态+轮次记录 |
| 每轮 CSV | <session>/data/scout_round{N}_new_products.csv |
当轮新商品 |
| 全量 CSV | <session>/data/scout_all_unique_products.csv |
所有唯一 ASIN(--export-all) |
| 轮次摘要 JSON | <session>/data/amazon-product-scout-agent-round{N}-*.json |
轮次结果+Top20新品(Saved full response 协议) |
| 参数模板 | <session>/data/scout_params_template.json |
--init-params 生成的模板 |
| SellerSprite JSON | <session>/data/linkfox-sellersprite-product-search-*.json |
API 原始响应 |