SPRINT 3 · ITEM 3 2026-05-18 姜博文 / TREE 样本 PN · STM32F103C8T6

EC 搜索抓取与
浏览器模拟 实测报告

评估对没有官方 API 的电商网站,是否可以通过浏览器模拟或爬虫补齐 Search Module 数据。 9 个核心站点、6 类工具横评、独立复核证据,从「让大模型每天开浏览器去搜」回到「API + Python driver 主路径」。

交付对象 · 郑文鑫 curl_cffi · chrome131 TLS patchright site_registry SearchOffer schema
§0 · CONCLUSION FIRST

结论先行

这件事不应该做成「让大模型每天打开浏览器去搜一遍」。 更合适的架构是分两层:Python driver 做生产数据面,LLM / 浏览器只做控制面。

官方 API · 商务接口
DigiKey / Mouser / Arrow / Nexar / LCSC partner — 最稳、最合规、最适合生产
10–500 ms
curl_cffi · 纯 Python driver
浏览器 TLS 指纹模拟(非普通 curl)— 已知站点批量取数主力
0.5–15 s
patchright · 强反爬浏览器
标准 Playwright 失败的 CloudFront / Cloudflare 站,少量补齐
4–10 s
Edge DevTools · Playwright MCP
登录态兜底 / 抓 Network / 现场诊断 — 探路工具,不做批量
10 s+
Tavily · Bright Data 等 SaaS
公共网页抽取或商业化强反爬兜底,少量备用
按量计费
放弃 · 申请接口
Akamai / 阿里盾 / 强 CAPTCHA 站,ROI 不够 — 走商务或暂缓
人工 / 邮件
给郑文鑫的直接答案 — 可立刻做 PoC 的是:立创国内 so.szlcsc.com、云汉、唯样、Future、ST / TI 厂商页、Alldatasheet、Findchips。
7
curl_cffi 立即可做
1
patchright 补齐
5
应走官方 API
2
放弃 · 删除
§1 · WHAT SEARCH MODULE NEEDS

项目里 Search Module 需要什么

从 agent_requirement.md 看,Search Module 是 Requirement Agent 的基础设施。 抓取结果不是「网页文本摘要」,而应该落到结构化字段。 这决定了工具选择 — 能稳定返回结构化字段的 driver,优先级高于「看起来能浏览页面」的工具。

mpn / manufacturer / category / package
硬约束过滤 · L1
型号归一化、品牌、封装、类目 — 给 Requirement Agent 第一层过滤用。
param_map
电气 / 环境参数
参数约束 — 电压、电流、温度、封装尺寸等结构化键值对。
stock / warehouse_stock / lead_time
供应风险 · L2
多仓库存与交期 — 直接影响 BOM 风险评估。
price_tiers / moq / currency
TCO · L4
阶梯价格、最小起订量、币种 — 总持有成本评估。
authorized / distributor / source_url
渠道可信度
是否授权、分销商身份、原始 URL — 给证据链留接口。
datasheet_url / rohs / lifecycle
合规 · 生命周期
datasheet 链接、RoHS、生命周期阶段 — 合规与替代决策。
fetched_at / source_type / confidence
可追溯
抓取时间、来源类型、置信度 — 回归测试与争议追踪。
§2 · INDEPENDENT VERIFICATION

9 站独立复核 · curl_cffi

运行环境:/tmp/ec-probe-v2/.venv/bin/python,curl_cffi.requests.get(..., impersonate="chrome131")。 访问时间为 2026-05-18 凌晨。下面是 9 个核心 URL 的本轮重测结果。

立创商城 · 国内
so.szlcsc.com/global.html?k={PN}
通过
200HTTP
240.3 KBSize
0.55 sLatency
__NEXT_DATA__ 完整,返回 8 条记录;MPN、品牌、封装、参数、三仓库存、RoHS 全字段。
→ curl_cffi + next_data_json parser
云汉芯城
www.hqchip.com/search?key={PN}
通过
200HTTP
929.8 KBSize
1.20 sLatency
页面含 STM32 / 库存 / ¥,PN+价格+库存三联可见,需补 DOM parser。
→ curl_cffi + html parser
唯样商城
www.oneyac.com/search?keys={PN}
部分通过
200HTTP
90.0 KBSize
0.67 sLatency
PN、库存可见;价格字段需继续解析,字段完整度中等。
→ curl_cffi + html parser
Findchips
www.findchips.com/search/{PN}
通过
200HTTP
715.1 KBSize
8.39 sLatency
页面含 stock / Distributor;与 Octopart / Nexar 数据重叠,Tavily 可备用。
→ curl_cffi 主 · Tavily 备
Future Electronics
www.futureelectronics.com/search?q={PN}
通过
200HTTP
260.6 KBSize
1.97 sLatency
含 STM32 / $ / stock,PN + 美元价格 + 库存三联可见。
→ curl_cffi
TI 厂商页
www.ti.com/product/LM358-N
通过
200HTTP
328.6 KBSize
—Latency
含 LM358-N / datasheet / package;适合 datasheet & 参数补充,不是报价主源。
→ curl_cffi · datasheet 用途
ST 厂商页
www.st.com/.../stm32f103c8.html
通过
200HTTP
371.3 KBSize
—Latency
含 STM32F103C8 / datasheet;同样作为 datasheet & 参数补充。
→ curl_cffi · datasheet 用途
Mouser China
www.mouser.cn/c/?q={PN}
不通过
200HTTP
7.1 KBSize
—Latency
命中 Akamai 拦截页,不是业务数据。HTTP 200 ≠ 内容可用。
→ 官方 API only
Utsource
www.utsource.net/itm/p/{PN}.html
不通过
200HTTP
12.0 KBSize
—Latency
命中 aliyun / captcha / 验证,ROI 低 — 放弃。
→ 暂不投入

立创国内站 · 最关键的独立证据

库存数字会随时间变化;本次复核与前置过程稿记录的 27632 只差 6 个 — 说明这是真实库存字段在更新,不是缓存或伪造。

__NEXT_DATA__.first_record

立创国内 SSR 页面直接注入 Next.js JSON,可解析的字段已经覆盖 Search Module 大部分硬需求:MPN、品牌、封装、参数、三仓库存、RoHS。价格阶梯仍需找二级接口或走 LCSC partner API。

parser: next_data_json
evidence_level: retested
missing: price_tiers

lightProductCode
C8734
lightProductModel
STM32F103C8T6
lightBrandName
ST(意法半导体)
lightStandard
LQFP-48(7×7)
totalStockNumber
27,626
gdWarehouseStockNumber
27,626
smtStockNumber
237,917
rohsLabal
RoHS

对前置过程稿的修正

§3 · SITE AVAILABILITY MATRIX

站点可得性矩阵

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 / 商务接口,不建议优先写网页爬虫。

数据源 推荐等级 推荐路径 价值 证据等级
TMEP1TME API产品规格、库存、价格;补欧洲渠道官方文档
element14 / Farnell / NewarkP1Product Search APIREST API 关键词 / MPN / 库存 / 价格官方文档
RS / AlliedP2商务 / PunchOut / 网页轻测工业品渠道有价值;API 入口不明待验证
LCSC partner APIP0官方 API / 商务申请价格阶梯与稳定性最终应走官方官方 + 实测
PartFuse · Algae 等聚合 APIP2小样本试用归一化潜力高;供应商风险高候选
SiliconExpert · Z2Data · IHSP2 / P3商业 license生命周期 / 合规 / 替代关系商务候选
§4 · TOOL STACK · L0–L5

工具栈结论 · 六层分层

L0 最权威、最稳;L5 最灵活、不可控。生产主链路只走 L0–L2; L3 探路 / L4 SaaS 兜底 / L5 RPA — 各司其职。

L0POWER
权威数据层
DigiKey · Mouser · Arrow · Nexar · LCSC · TME · element14 API
报价 · 库存 · 授权渠道 · 生命周期
✓ 生产
L1WORK
轻量 driver 层
curl_cffi + selectolax / json
已知站点批量取数
✓ 生产
L2HARD
强浏览器 driver 层
patchright
少数标准 Playwright 失败的站
⊙ 有选择
L3EXPLORE
探路层
Edge DevTools MCP · Playwright MCP · Stagehand · Crawl4AI · Scrapling
新站分析 · 抓 Network · 生成 parser
✗ 不批量
L4SAAS
SaaS 兜底层
Browserless · Browserbase · Bright Data · Steel
高价值 hard case
⚠ 预算内
L5RPA
手工 / RPA 层
UI.Vision · Automa · Computer Use
演示 · 低频后台操作
✗ 不进
LLM / browser 工具是开发与兜底控制面,Python / API driver 是生产数据面。

不建议作为主路径的工具

工具 不推荐原因
普通 requests / curl没有浏览器 TLS 指纹 — V1.1 的误判就是由此产生
标准 Playwright / Selenium对 hqchip / oneyac 能渲染,但 curl_cffi 更快;对 LCSC 海外又不够
DrissionPage国内社区常用,本地矩阵速度和通过率不如 patchright
nodriver本地矩阵有 PARTIAL,不适合生产批量
browser-use · Skyvern · Computer Use适合未知站点探索,不适合每天批量 — 成本和延迟过高
绕付费墙插件不建议纳入工程路线;合规风险高,也不是核心路径

为什么不推荐「浏览器插件优先」

§4.5 · DECISION TREE

工具选型决策树

用户需求进 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;
§4.6 · EXTENDED TOOL RADAR

扩展工具雷达 · 10 项横评

本轮主结论仍是 curl_cffi + patchright + 官方 API。 下面这些可加入后续评测池;三条评分维度: 生产可用 · 探路价值 · 成本可控。

Crawl4AILLM-friendly crawler
datasheet 页、厂商文档、动态页转 Markdown / JSON、批量 crawl。不适合高反爬主链路。
生产3
探路4
成本5
P1
Scrapling MCPMCP scraping server
Agent 直接调用抓取、截图、正文抽取。生产库存主链路仍需 driver 固化。
生产2
探路4
成本4
P1 / P2
StagehandAI browser framework
新站探索、自然语言抽取、页面结构变动时减少 selector 维护。不要做批量执行器。
生产1
探路5
成本2
P1
BrowserbaseCloud browser infra
云端长会话、session replay、代理、Agent 浏览器部署。本地 PoC 用不上。
生产3
探路4
成本1
P2
BrowserlessBrowserQL / SmartScrape / Unblock
stealth、住宅代理、CAPTCHA、返回 HTML / 截图 / endpoint。免费 PoC 用不上。
生产3
探路3
成本1
P2
Steel.devCloud browser for AI
browser-use / Computer Use / OpenAI agent 的云浏览器底座。结构化库存主链路用不上。
生产2
探路4
成本2
P2
SkyvernAI workflow automation
多步骤表单、后台流程、陌生网页操作。不适合每天批量查 PN。
生产1
探路3
成本2
P2 / P3
browser-useAI browser agent
快速 demo、复杂网页探索。批量抓取成本和延迟过高。
生产1
探路3
成本2
P2 / P3
Browser MCPChrome extension bridge
复用真实登录态、2FA、cookie、抓页面状态。不是后端生产服务。
生产1
探路4
成本5
P1
UI.Vision / Automa / BardeenBrowser RPA extension
人工可视化录制、一次性后台流程。不推荐做工程主链路。
生产1
探路2
成本5
×
§5 · ENGINEERING ROADMAP

建议的工程落地

三步走:site_registry → SearchOffer schema → 一周可交付的 PoC。 不追求 perfect,先把 6-7 个 driver + 1 个 patchright driver 接进去,回归跑起来。

第一步 · 建 site_registry

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

第二步 · 统一 SearchOffer schema

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

第三步 · 一周内可交付的 PoC

D1
写 curl_cffi drivers
szlcsc / hqchip / oneyac / future / ST / TI / alldatasheet
→ 6-7 个可跑 driver
D2
补 patchright + Findchips 改路径
LCSC 海外 + Findchips
→ 2 个补充源
D3
10 PN 回归
→ results.jsonl + 字段覆盖率表
D4
接 site_registry + 统一 schema
→ module_search 可调用
D5
发 API 申请
LCSC partner / Newark / Avnet / Chip1Stop / SourcEngine / Verical
→ 商务接口推进

如果要做更完整评测 · 三个小实验

只建议在 curl_cffi + patchright PoC 之后做。否则会把时间花在平台调研上,反而拖慢 Search Module 的第一版落地。

Crawl4AI 对比

本地安装即可
目标:看它能否替代部分 Playwright / Tavily 抽取。
样本:szlcsc / hqchip / Future / ST / Findchips。
通过:输出结构化 JSON,字段覆盖不低于 curl_cffi 80%。

Stagehand 探路

需模型 key · Browserbase 可选
目标:看自然语言 extract 是否能快速定位新站字段。
样本:LCSC 海外 / element14 / TME。
通过:10 步内定位库存 / 价格字段或内部请求。

Browserless hard-case

需 token + 预算
目标:SaaS 对 Akamai / 阿里盾是否值得付费。
样本:Mouser.cn / Utsource。
通过:能返回业务 HTML 或 screenshot,并可导出 cookie / endpoint。

回归测试标准

每个 driver 每天跑 3 个固定 PN,看字段覆盖率与稳定性变化:

MCU · 参数完备
STM32F103C8T6
验证参数、库存、品牌、封装四联。
模拟器件 · 老料
LM358-N
验证厂商页和老料生命周期标签。
非 STM32 偏置
CC2640R2F 或团队 PN
验证非 STM32 偏置 — 防 STM 系列过拟合。

每次记录

§6 · DROP-IN MESSAGE

给郑文鑫的群里短结论

可以直接复制发到群里。

PASTE TO GROUP CHAT

我把半导体元器件方向的搜索 / 浏览器模拟路线实测了一轮。结论是不要把主路径做成「大模型开浏览器批量搜」,而是 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。

· · ·