将 Markdown 教材文件按章节切分为独立的 .md 文件。
使用 MinerU 开源工具将 PDF 教材转换为 Markdown 格式:
# 安装 MinerU
pip install magic-pdf
# 使用 MagicPDF 转换
magic-pdf -p <pdf_path>转换后的 Markdown 文件即可使用本工具进行章节切分。
python md_chapter_splitter.py <输入文件.md>| 参数 | 说明 | 默认值 |
|---|---|---|
input_file |
输入的 Markdown 文件路径 | 必填 |
--output-dir |
输出目录 | ./output |
--pattern |
章节标题正则表达式 | ^#\s*第[零一二三四五六七八九十百千万\d]+\s*章 |
--max-size |
单个文件最大字节数,0 表示不分割 | 65536 (64KB) |
--dry-run |
试运行,仅显示检测结果 | 关闭 |
# 切分章节,禁用文件分割
python md_chapter_splitter.py 教材.md --max-size 0
# 指定输出目录
python md_chapter_splitter.py 教材.md --output-dir ./chapters
# 试运行查看检测结果
python md_chapter_splitter.py 教材.md --dry-run工具支持识别以下格式的章节标题:
| 格式 | 示例 |
|---|---|
| 标准格式 | # 第1章 绪论 |
| 无空格 | # 第2章Intel系列微处理器 |
| 带页码 | # 第3章 传感器技术 362 |
| 中文数字 | # 第五章 检测技术基础 |
| 多行标题 | # 第五章 三相异步电动机的运行原理及单相异步电动机 |
- 多本书籍:如果 Markdown 文件包含多本教材,工具会自动在检测到新的"篇"或重复章节号时截断
- 目录识别:工具会自动过滤目录条目,只保留实际章节内容
- 文件分割:当章节内容超过 64KB 时,会自动分割为多个部分,使用
--max-size 0可禁用此功能