Files
Knowit d874278bc5 Add EasyEDA Std project source ingestion (10 boards backfilled)
打通 oshwhub origin=std 项目的工程源(schematic + PCB dataStr)抓取链路。原
plan.md §1.6 假设需要登录,实测 lceda.cn/api/documents/<doc>?uuid=<doc>&path=<doc>
对公开项目匿名可访问 —— 无需 cookie,无账号封禁风险。

调研:4 轮探测留痕在 data/state/std_probe[1-5]/(gitignored);翻 Std 编辑器
v6.5.51 的 main.min.js bundle 找到 ajaxDetail 端点;按 docType 区分两种
响应 shape(schematic 项目视图 vs PCB 文档视图)。

Crawler:
  - make_source_client() 用浏览器 UA + lceda.cn/editor Referer,因为
    oshwhub /api/project/<uuid> 端点拒绝 FacereDataset/0.1 UA(CLAUDE.md
    UA 例外条款:目标站主动封自定义 UA + 公开静态资源)
  - fetch_std_source(): 项目元 → version_documents → 逐文档 dataStr → 落
    source/<doc>.json + source/manifest.json
  - --with-source(爬新项目时一并抓源)/ --backfill-source(仅扫已有)
  - QPS ≤ 0.2 (SLEEP_SOURCE = 5s) 自律

Schema: 加 source_format / source_path / source_documents / editor_version
(前 3 进 enum 锁定,便于后续 Pro / KiCad 源对齐)。

回填结果:10/10 成功,45 个文档,33.2 MB;schema validate 全通。
docTypes 主要是 1 (schematic) 与 3 (pcb);USB 电压电流表只有 PCB 文档(4 个:
主板+盖板+底板+面板,作者未上传原理图源)。

完整调研:docs/sources/easyeda_std_source.md。
2026-04-28 20:07:40 +08:00

116 lines
4.1 KiB
JSON
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"source": "oshwhub",
"source_url": "https://oshwhub.com/yanranxiaoxi/Multi-adaptation-Wi-Fi-Geiger-Counter-Double-Tube-Type",
"project_id": "b077573dfb764e95b1d27faba49cca65",
"title": "小汐 & 阿曈 -> 盖革计数器MWGC-2T",
"description_short": "⭐ 中文固件多管型 Wi-Fi 盖革计数器MWGC-2T ⭐",
"description_path": "description.md",
"author": {
"username": "yanranxiaoxi",
"display_name": "久治明千树汐",
"user_id": "eac388b086064c2087f67a10b524a911"
},
"license": "CC BY-SA 4.0",
"tags": [],
"created_at": "2023-03-11T16:40:16.000Z",
"updated_at": "2026-01-30T13:13:39.000Z",
"published_at": "2024-11-25T01:38:14.000Z",
"crawled_at": "2026-04-23T11:26:00.127742+00:00",
"metrics": {
"likes": 212,
"stars": 365,
"forks": 189,
"views": 49755,
"watch": 0,
"comments": 168
},
"cover": {
"url": "https://image.lceda.cn/pullimage/Z4KOXBgwtmwMIUpJC8ZSyFWeY6hBg2899oPP5UeZ.jpeg",
"path": "cover.jpeg"
},
"files": [
{
"name": "3D打印外壳与电池版改装.zip",
"url": "https://image.lceda.cn/attachments/2023/9/Ps19TA0QecWL9XXjgOxNhHxRj8FvpO7kttXqF8KI.zip",
"original_id": "de773a049b1149ea8f5b885277d839ac",
"ext": "zip",
"mime": "application/x-zip-compressed",
"size": 3798995,
"md5": "3ec71e545b0f0b70f93b58599c8d1c7e",
"path": "files/3D打印外壳与电池版改装.zip",
"sha256": "e23537c79e44be7dadb89ba82fb3b195ae2436d8200c62659f31a87093f6fd7e"
},
{
"name": "MWGC-Firmware_v0.1.3.20241125a.bin",
"url": "https://image.lceda.cn/oshwhub/project/attachments/f59327bb7a8f4180851468b9dee83944.bin",
"original_id": "df5c50cf692548afb2ee27096178c282",
"ext": "bin",
"mime": "application/octet-stream",
"size": 428496,
"md5": "7bd953b6a41c5ad621b7df5f47c3e6ed",
"path": "files/MWGC-Firmware_v0.1.3.20241125a.bin",
"sha256": "87bf7129731121ebaead85278e9aad8f8b2ea0ff3f5f9b3d46ed29e65f82d577"
}
],
"raw_fields": {
"path": "yanranxiaoxi/Multi-adaptation-Wi-Fi-Geiger-Counter-Double-Tube-Type",
"grade": 4,
"origin": "std",
"public": true,
"publish": true,
"skipped_files": []
},
"source_format": "easyeda-std",
"source_path": "source/",
"source_documents": [
{
"doc_uuid": "68b08976c03a460e811b22f8cc49ecc1",
"docType": 1,
"master": "d71483c684ea4395a99d17e20cc6c749",
"path": "source/68b08976c03a460e811b22f8cc49ecc1.json",
"size": 366098,
"sha256": "fd91429213954bda1d807cc903c83948dc9b026c853881c3fc916daf4c6567d9"
},
{
"doc_uuid": "ca39ac258d094bb2843a0ea04ec295e4",
"docType": 3,
"master": "382862140fc14344ab4f95f66d7c4d22",
"path": "source/ca39ac258d094bb2843a0ea04ec295e4.json",
"size": 7772,
"sha256": "acd156c2f4582da0b3cb8cb0167a812cec05da6739b9a835cd12df42d2e20d84"
},
{
"doc_uuid": "b2de073f48ef43f086a1f8e5d46440c2",
"docType": 3,
"master": "ead07021260a47f499d7d60def3b0bd8",
"path": "source/b2de073f48ef43f086a1f8e5d46440c2.json",
"size": 7125,
"sha256": "b16c25863c0a4c553c954600bfc7ff059b1c27a936aa59ac0875226c65745a70"
},
{
"doc_uuid": "89b78803dc7142a182ac7503389cd84a",
"docType": 3,
"master": "3c2485a7ffa14ece95405cd4c6394663",
"path": "source/89b78803dc7142a182ac7503389cd84a.json",
"size": 4877,
"sha256": "6cc353799c788d896f8d81c3c3f5878acf035ac6e0586d2d89b5699106d670b8"
},
{
"doc_uuid": "d3d004c7a55b4817aceac161849a7b62",
"docType": 3,
"master": "a4acf24d4c904f1ca758ff2496f6394f",
"path": "source/d3d004c7a55b4817aceac161849a7b62.json",
"size": 4138,
"sha256": "dc8fd89eeaed8d6a3c26efaabca8daa9fa3880a6bba0e9a088f0ffd76cf01929"
},
{
"doc_uuid": "a62ba7febc7b4f769583678f5db4ec3d",
"docType": 3,
"master": "d2ff5a1fac434987bb5743280ef4239a",
"path": "source/a62ba7febc7b4f769583678f5db4ec3d.json",
"size": 866651,
"sha256": "262d08df64bf258ed29935fa5ff92038dfdd8f3697c8a04841628c3b3c2519dc"
}
],
"editor_version": "6.5.47"
}