Skip to content

jiyong/mindmap-extractor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

思维导图生成器

这个项目可以从EPUB解析出的Markdown文件中自动提取结构化内容,并生成思维导图。适用于学习笔记、技术文档等内容的知识整理。

主要功能

  • 从Markdown文件中提取标题结构和重要内容
  • 使用NLP技术自动提取文本中的关键词和重要概念
  • 支持多种导出格式:Markdown、JSON、Graphviz DOT
  • 提供Web界面,方便用户操作
  • 支持上传自定义Markdown文件进行处理

安装方法

使用Conda环境(推荐)

  1. 确保已安装 AnacondaMiniconda

  2. 克隆代码库:

    git clone <repository-url>
    cd <repository-directory>
  3. 使用提供的脚本创建环境并启动应用:

    chmod +x setup_conda.sh
    ./setup_conda.sh

    也可以只创建环境但不启动应用:

    ./setup_conda.sh --create-only

    或者使用已创建的环境直接启动应用:

    ./setup_conda.sh --run-only

手动安装

  1. 安装依赖:

    pip install -r requirements.txt
  2. 安装中文NLP模型:

    python -m spacy download zh_core_web_sm
  3. 启动应用:

    python app.py

应用启动后,访问 http://localhost:8000 打开Web界面。

命令行使用方法

除了Web界面外,还可以使用命令行直接生成思维导图:

# 激活conda环境
conda activate mindmap

# 从Markdown文件生成思维导图
python mindmap_generator.py <input-markdown-file> [选项]

选项:
  --output, -o   指定输出文件路径
  --format, -f   指定输出格式 (json, dot, md)
  --no-nlp       禁用NLP功能
  --debug        启用调试日志

示例:

# 生成JSON格式的思维导图
python mindmap_generator.py books/105296-01/105296-01安全人机工程学-0321.md -f json

# 生成Markdown格式的思维导图
python mindmap_generator.py books/105296-01/105296-01安全人机工程学-0321.md -f md -o output/my_mindmap.md

项目结构

  • mindmap_generator.py - 思维导图生成器核心代码
  • app.py - Web应用程序
  • requirements.txt - Python依赖
  • environment.yml - Conda环境配置
  • setup_conda.sh - Conda环境安装脚本
  • books/ - 存放输入的Markdown文件
  • output/ - 存放生成的思维导图
  • static/ - Web应用静态资源
  • templates/ - Web应用模板

技术细节

思维导图生成器主要通过以下步骤工作:

  1. 解析Markdown文件,提取标题结构和内容
  2. 将标题结构转换为思维导图的节点层次
  3. 从内容中提取重要信息(列表项、加粗文本等)
  4. 使用NLP技术(jieba分词和TextRank算法)提取关键词
  5. 根据选择的格式导出思维导图

支持的输出格式

  • JSON: 可用于与其他工具集成
  • Markdown: 可直接查看的思维导图
  • Graphviz DOT: 可以使用Graphviz工具转换为图像

注意事项

  • 确保输入的Markdown文件使用UTF-8编码
  • 对于大型文档,NLP处理可能需要一些时间
  • DOT格式输出需要安装Graphviz才能转换为图像

后续改进计划

  • 支持更多输出格式(FreeMind, XMind等)
  • 添加更高级的内容摘要功能
  • 提供思维导图的可视化预览功能
  • 支持更多语言的自然语言处理

About

epub->markdown->mindmap extractor

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors