评估对没有官方 API 的电商网站,是否可以通过浏览器模拟或爬虫补齐 Search Module 数据。 9 个核心站点、6 类工具横评、独立复核证据,从「让大模型每天开浏览器去搜」回到「API + Python driver 主路径」。
这件事不应该做成「让大模型每天打开浏览器去搜一遍」。 更合适的架构是分两层:Python driver 做生产数据面,LLM / 浏览器只做控制面。
从 agent_requirement.md 看,Search Module 是 Requirement Agent 的基础设施。
抓取结果不是「网页文本摘要」,而应该落到结构化字段。
这决定了工具选择 — 能稳定返回结构化字段的 driver,优先级高于「看起来能浏览页面」的工具。
运行环境:/tmp/ec-probe-v2/.venv/bin/python,curl_cffi.requests.get(..., impersonate="chrome131")。
访问时间为 2026-05-18 凌晨。下面是 9 个核心 URL 的本轮重测结果。
__NEXT_DATA__ 完整,返回 8 条记录;MPN、品牌、封装、参数、三仓库存、RoHS 全字段。STM32 / 库存 / ¥,PN+价格+库存三联可见,需补 DOM parser。stock / Distributor;与 Octopart / Nexar 数据重叠,Tavily 可备用。STM32 / $ / stock,PN + 美元价格 + 库存三联可见。LM358-N / datasheet / package;适合 datasheet & 参数补充,不是报价主源。STM32F103C8 / datasheet;同样作为 datasheet & 参数补充。aliyun / captcha / 验证,ROI 低 — 放弃。库存数字会随时间变化;本次复核与前置过程稿记录的 27632 只差 6 个 — 说明这是真实库存字段在更新,不是缓存或伪造。
立创国内 SSR 页面直接注入 Next.js JSON,可解析的字段已经覆盖 Search Module 大部分硬需求:MPN、品牌、封装、参数、三仓库存、RoHS。价格阶梯仍需找二级接口或走 LCSC partner API。
parser: next_data_json
evidence_level: retested
missing: price_tiers
patchright 稳定补齐站点 — 实际上 /tmp/ec-probe-v2/tool-matrix-results-v2.json 里 patchright/findchips 是 HTTP 500。curl_cffi 重测 Findchips 反而是 715 KB 完整页面;tavily-results.json 也显示 GOOD。P0 是「立刻做 PoC」候选;P1 是次优补充;API 优先类不写爬虫;放弃 / 删除类不进路线图。
| 分组 | 站点 | 推荐路径 | 可取字段 |
|---|---|---|---|
| P0 直接接入 | 立创国内 so.szlcsc.com | curl_cffi + __NEXT_DATA__ JSON | MPN · 品牌 · 封装 · 类目 · 参数 · 三仓库存 · RoHS |
| P0 直接接入 | 云汉 hqchip | curl_cffi + HTML parser | PN · 价格 · 库存 · 页面字段 |
| P0 直接接入 | 唯样 oneyac | curl_cffi + HTML parser | PN · 库存(价格需二次验证) |
| P0 直接接入 | Future | curl_cffi | PN · 美元价格 · 库存 |
| P0 / P1 | Findchips | curl_cffi · Tavily 备用 | 分销商 · 库存 · 聚合(与 Octopart 重叠) |
| P1 数据补充 | ST / TI 厂商页 | curl_cffi | datasheet · package · 产品说明(非报价) |
| P1 数据补充 | Alldatasheet | curl_cffi | datasheet 索引(仅 fallback) |
| P1 浏览器补齐 | LCSC 海外 lcsc.com | patchright · 优先申请官方 API | 海外站结果 · 库存片段 |
| API 优先 | Mouser · DigiKey · Arrow · Nexar | 官方 API | 报价 · 库存 · 交期 · 授权渠道 |
| API / 商务 | Newark · Avnet · Chip1Stop · SourcEngine · Verical | 发邮件 / 商务接口 | 报价 · 库存(不建议写爬虫) |
| 放弃 | Utsource | 无 — 阿里盾 / CAPTCHA | ROI 低 |
| 删除 | hqew | 无 — SSL / 搜索健康度差 | 从目标列表删除 |
| 不纳入本轮 | 淘宝 · 京东 · 拼多多 · 1688 | 无 | 通用电商 — 与半导体元器件项目偏离 |
下面不是本轮本机实测结论,而是根据官方文档和项目需求补充的候选源。它们更适合走 API / 商务接口,不建议优先写网页爬虫。
| 数据源 | 推荐等级 | 推荐路径 | 价值 | 证据等级 |
|---|---|---|---|---|
| TME | P1 | TME API | 产品规格、库存、价格;补欧洲渠道 | 官方文档 |
| element14 / Farnell / Newark | P1 | Product Search API | REST API 关键词 / MPN / 库存 / 价格 | 官方文档 |
| RS / Allied | P2 | 商务 / PunchOut / 网页轻测 | 工业品渠道有价值;API 入口不明 | 待验证 |
| LCSC partner API | P0 | 官方 API / 商务申请 | 价格阶梯与稳定性最终应走官方 | 官方 + 实测 |
| PartFuse · Algae 等聚合 API | P2 | 小样本试用 | 归一化潜力高;供应商风险高 | 候选 |
| SiliconExpert · Z2Data · IHS | P2 / P3 | 商业 license | 生命周期 / 合规 / 替代关系 | 商务候选 |
L0 最权威、最稳;L5 最灵活、不可控。生产主链路只走 L0–L2; L3 探路 / L4 SaaS 兜底 / L5 RPA — 各司其职。
| 工具 | 不推荐原因 |
|---|---|
| 普通 requests / curl | 没有浏览器 TLS 指纹 — V1.1 的误判就是由此产生 |
| 标准 Playwright / Selenium | 对 hqchip / oneyac 能渲染,但 curl_cffi 更快;对 LCSC 海外又不够 |
| DrissionPage | 国内社区常用,本地矩阵速度和通过率不如 patchright |
| nodriver | 本地矩阵有 PARTIAL,不适合生产批量 |
| browser-use · Skyvern · Computer Use | 适合未知站点探索,不适合每天批量 — 成本和延迟过高 |
| 绕付费墙插件 | 不建议纳入工程路线;合规风险高,也不是核心路径 |
用户需求进 Requirement Agent → Search Agent 查 site_registry → 按官方 API / 已有 driver / 探路层 分流。
探路找到稳定接口就沉淀成 Python driver;找不到就降级到 SaaS 兜底或放弃。
flowchart TD
A["用户需求 / PN / 自然语言"] --> B["Requirement Agent"]
B --> C["Search Agent / module_search"]
C --> D{"站点是否已有官方 API?"}
D -->|是| E["官方 SDK / 商务 API"]
D -->|否| F{"site_registry 是否已有 driver?"}
F -->|curl_cffi| G["curl_cffi driver
0.5–15 s · 批量主力"]
F -->|patchright| H["patchright driver
4–10 s · 强反爬补齐"]
F -->|无| I["浏览器探路层"]
I --> J["Edge DevTools / Playwright MCP
抓 Network · 登录态 · 现场诊断"]
I --> K["Stagehand / Crawl4AI / Scrapling
探索页面结构并生成候选 parser"]
J --> L{"能固化成稳定接口?"}
K --> L
L -->|能| M["沉淀为新 Python driver
加入 site_registry"]
L -->|不能| N{"商业价值足够高?"}
N -->|高| O["Browserless / Bright Data
SaaS 兜底评测"]
N -->|低| P["放弃 / 发 API 申请 / 人工询价"]
E --> Q["统一 SearchOffer schema"]
G --> Q
H --> Q
M --> Q
O --> Q
classDef start fill:#1A2238,stroke:#1A2238,color:#F4F1EA;
classDef decision fill:#F4F1EA,stroke:#2E5C8A,color:#1A2238;
classDef prod fill:#4A7C3E,stroke:#4A7C3E,color:#F4F1EA;
classDef explore fill:#7A8FA8,stroke:#7A8FA8,color:#F4F1EA;
classDef saas fill:#B85C2E,stroke:#B85C2E,color:#F4F1EA;
classDef fail fill:#A33A2D,stroke:#A33A2D,color:#F4F1EA;
classDef out fill:#1E3F66,stroke:#1E3F66,color:#F4F1EA;
class A,B,C start;
class D,F,L,N decision;
class E,G,H,M prod;
class I,J,K explore;
class O saas;
class P fail;
class Q out;
本轮主结论仍是 curl_cffi + patchright + 官方 API。
下面这些可加入后续评测池;三条评分维度:
生产可用 · 探路价值 · 成本可控。
三步走:site_registry → SearchOffer schema → 一周可交付的 PoC。 不追求 perfect,先把 6-7 个 driver + 1 个 patchright driver 接进去,回归跑起来。
so_szlcsc:
host: so.szlcsc.com
method: curl_cffi
parser: next_data_json
evidence_level: retested
fields:
- mpn
- brand
- package
- category
- param_map
- stock_total
- stock_gd
- stock_smt
- rohs
missing:
- price_tiers
hqchip:
host: www.hqchip.com
method: curl_cffi
parser: html
evidence_level: retested
fields: [mpn, stock, price_text]
lcsc_overseas:
host: www.lcsc.com
method: patchright
evidence_level: existing_raw_result
note: use only when official LCSC API is unavailable
mouser_cn:
host: www.mouser.cn
method: official_api_only
evidence_level: retested_blocked
class SearchOffer:
query: str
normalized_mpn: str | None
manufacturer: str | None
distributor: str
source_url: str
source_type: str # official_api / curl_cffi / patchright / mcp_probe
sku: str | None
package: str | None
category: str | None
param_map: dict
stock: int | None
stock_detail: dict
price_tiers: list[dict]
currency: str | None
moq: int | None
lead_time_days: int | None
rohs: bool | None
datasheet_url: str | None
fetched_at: str
confidence: float
evidence_digest: str
只建议在 curl_cffi + patchright PoC 之后做。否则会把时间花在平台调研上,反而拖慢 Search Module 的第一版落地。
extract 是否能快速定位新站字段。每个 driver 每天跑 3 个固定 PN,看字段覆盖率与稳定性变化:
stock / price 是否为空可以直接复制发到群里。
我把半导体元器件方向的搜索 / 浏览器模拟路线实测了一轮。结论是不要把主路径做成「大模型开浏览器批量搜」,而是 API + Python driver 为主,浏览器 / MCP 只做探路和兜底。
当前最值得先做的是 curl_cffi(chrome131 TLS):立创国内 so.szlcsc.com、云汉、唯样、Future、ST / TI 厂商页、Alldatasheet、Findchips 都能拿到数据;其中立创国内的 __NEXT_DATA__ 里已经有 productCode、品牌、封装、参数、三仓库存和 RoHS。
浏览器模拟里,标准 Playwright / Selenium 不适合作生产主路径;patchright 可以补 LCSC 海外这类强反爬站。Edge DevTools / Playwright MCP 适合抓 Network 和登录态兜底。Mouser.cn、Utsource 这类 Akamai / 阿里盾站不建议硬爬,优先 API / 商务接口或放弃。下一步建议先做 6-7 个 curl_cffi driver + 1 个 patchright driver,接到 site_registry 和统一 SearchOffer schema。