开源项目推荐:tchMaterial-parser —— 国家智慧教育平台电子课本,一键批量下载

开源项目推荐:tchMaterial-parser —— 国家智慧教育平台电子课本,一键批量下载

一句话:把国家中小学智慧教育平台上的电子课本,批量扒下来变成带书签的 PDF,存本地慢慢看。

GitHub:happycola233/tchMaterial-parser | ⭐ 6.9k | Fork 878 | MIT 协议

2025 年 5 月登上 GitHub Trending 总榜第 3(单日新增约 400 Star)。

工具主界面:左侧资源列表,右侧粘贴链接即下(仓库官方截图)
工具主界面:左侧资源列表,右侧粘贴链接即下(仓库官方截图)

它是什么?解决什么问题?

国家中小学智慧教育平台(basic.smartedu.cn)上有全套电子课本,但官方只给在线预览:一页页翻、不能批量存、断网就没了。家长想给孩子打印、老师想备课存档,都很折腾。

tchMaterial-parser 就是干这个的:把课本预览页链接粘进去,工具自动解析出 PDF 地址、批量下载、按课本名存好,还能自动打上书签。一次配置,整套教材带走。

核心优势:为什么 6.9k Star

1. 真解决痛点:批量 + 断点续下 + 自动跳过

  • 多个链接一次粘(每行一个),批量下完;
  • 已下载的自动跳过,补下整套教材只补缺的;
  • 随时点停止,已完成保留、残文件不留,开箱即用。

2. 细节拉满:自动命名 + 自动书签

下载的 PDF 直接用课本名命名,不用一个个改;开了”添加 PDF 书签”,看书时目录跳转一步到位。教师备课、家长打印都省事。

深色模式:跟随系统,右上角一键切换(仓库官方截图)
深色模式:跟随系统,右上角一键切换(仓库官方截图)

3. 把”登录态”做成了可选 + 本地化

平台资源要登录态才能稳定下,工具支持手动贴 Access Token(控制台跑一段官方给的脚本复制),Token 只存本地(注册表/本地文件)、不上传云端;不贴也能用备用方式下。过期(一般 7 天)重新取一次就行。

4. 跨平台 + 跟手:WinGet / AUR / 源码全有

  • Windows:GitHub Releases 直接下 exe,还能 winget install;
  • Arch:AUR 一行 yay -S;
  • macOS / Linux:Release 包或源码跑,Python 3.10+;
  • 高 DPI 不糊、深色模式跟随系统,桌面软件该有的体面都有。
下载成果:PDF 自动带书签目录,可跳转章节(仓库官方截图)
下载成果:PDF 自动带书签目录,可跳转章节(仓库官方截图)

它是怎么制作的?(一句话原理)

Python 桌面应用:解析课本预览页 → 拿到资源直链 → 多线程批量下载 → 按需调用 PDF 库写书签。复杂的是对平台接口变化的适配(Token 过期、资源下架),作者把”跳过已下、失败重试、Token 本地持久化”这些脏活都包了,所以用起来才像”一键”。

怎么使用?三步

1. 装

去 Releases 下对应系统版本,Windows/Linux 解压即用;macOS 未签名需先跑 xattr -cr 去隔离(最好挪进 /Applications 再用,Token 才能持久化)。

2. 贴链接(+ 可选贴 Token)

  • 把课本预览页 URL 粘进文本框,一行一个;
  • 想更稳:去智慧教育平台登录后 F12,在控制台跑官方脚本,把输出的 JSON 贴到工具”设置 Token”里(Token 7 天左右过期,失效重取)。

3. 下

点下载,选目录,等收 PDF。开了书签选项的会自动打书签。

常见问题(先看这里再提问)

现象 先查
下载失败 没 Token 就先设 Token;设了还失败多半是 Token 过期(7 天),重取
Token 存哪 Win 注册表 / Linux ~/.config / macOS Application Support,都不上云
旧网址下不了 部分旧资源平台已移除,换新链接

边界和声明(原作者强调的)

  • 工具只做”下载便利”,不存不托管不分发资源,版权归平台和权利人;
  • 仅限个人学习与教学参考,别商用、别二次分发;
  • 跟智慧教育平台无任何隶属合作关系,用之前看平台服务条款。

结语

6.9k Star 说明了一件事:家长和老师的刚需,顶得上十个花哨功能。这个项目赢在把一条”找链接一下载一改名一打书签”的体力链路做成了真正的”一键”,还跨了全平台。

仓库:github.com/happycola233/tchMaterial-parser(MIT)。用得上就去点个 Star,有 Bug 先看 FAQ 再提 Issue。

Comments

No comments yet. Why don’t you start the discussion?

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注