Files

2.5 KiB
Raw Permalink Blame History

lc-step

通过立创商城料号(Cxxxxx)或组件 UUID 批量下载立创EDA(LCEDA / EasyEDA Pro)3D 模型(STEP / OBJ)的命令行工具。

功能

  • 输入立创商城料号(如 C25744),自动解析 3D 模型并下载 STEP 文件
  • 可同时下载源 OBJ 网格模型
  • 支持批量料号,一次请求批量解析
  • 兼容直接传 32 位十六进制组件/模型 UUID
  • 私有器件可携带登录 Cookie

依赖

Python 3.6+,仅标准库,无第三方依赖。

用法

# 下载 STEP(保存到当前目录,文件名取器件名)
python3 lceda_step.py C25744

# 批量下载多个料号
python3 lceda_step.py C25744 C2590 C14663 C48642328

# 同时下载源 OBJ 模型
python3 lceda_step.py --obj C25744

# 指定输出目录
python3 lceda_step.py --outdir ./models C2590

# 私有器件:携带 pro.lceda.cn 登录 Cookie
python3 lceda_step.py --cookie "lc_auth=xxx" C2590

# 直接传组件/模型 UUID(与料号混用亦可)
python3 lceda_step.py 98c88bc2b9094f218f3a3e30a7012738

参数

参数 说明
items 立创商城料号(Cxxxxx)或 32 位十六进制 UUID,可多个
--obj 额外下载源 OBJ 网格模型
--outdir 输出目录,默认当前目录
--cookie pro.lceda.cn 登录 Cookie(私有器件需要)

工作原理

LCSC 料号 (Cxxxxx)
  → POST /api/v2/eda/product/search         批量查询
      → device_info.footprint_info.model_3d.uri
  → GET  /api/v2/components/{uri}            解析 3D 模型 UUID(失败则直接用 uri)
      → 3d_model_uuid + path(owner)
  → GET  modules.lceda.cn/qAxj6KHrDKw4blvCG8QJPs7Y/{3d_model_uuid}?path={owner}
      → STEP(AP214,服务端 SolidWorks 预生成)

注意:

  • 器件级 STEP 由立创服务端用 SolidWorks 预生成并存在公开 CDN 上,本工具直接下载,不依赖浏览器;
  • 部分器件的 model_3d.uri 本身就是 CDN 模型 UUID(如 RK3506B),/api/v2/components 查不到时脚本会自动回退直接使用;
  • CDN 路径中的固定 token 取自前端引擎 JS,如未来失效需更新脚本中的 STEP_TOKEN 常量;
  • 仅公开器件可匿名下载;私有器件需 --cookie。

示例输出

$ python3 lceda_step.py C25744 C2590
C25744 | 0402WGF1002TCE | model_doc=98c88bc2b9094f218f3a3e30a7012738
  -> C25744 STEP 1068243 bytes -> 0402WGF1002TCE.step
C2590 | IRLML2803TRPBF | model_doc=c62791f0466c4ae2a892c056b845b0ca
  -> C2590 STEP 2773949 bytes -> IRLML2803TRPBF.step