Markdown to HTML

📄 零依赖 Markdown 转精美 HTML

零依赖 Python 工具,将 Markdown 转为自包含、响应式 HTML,内置明暗双主题,适用于文档与邮件。

收藏
8.6k
安装
2.4k
版本
1.0.1
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

markdown-to-html 是一款纯 Python 标准库实现的 Markdown 转换器,无需安装任何第三方依赖。用户通过命令行指定输入文件(或 stdin 管道)、输出路径及主题参数,即可生成单一 HTML 文件。典型命令:

python main.py README.md -o readme.html --theme dark --title "项目文档"

支持管道输入(cat file.md | python main.py - -o out.html),便于集成到 CI/CD 或自动化发布流程。

显著优点

  • 零依赖部署:仅使用 Python 内置库,避免供应链攻击面与版本冲突。
  • 自包含输出:CSS 全部内嵌,单文件即可离线查看、邮件发送或离线存档。
  • 双主题支持:内置类 GitHub 的 Light 模式与护眼 Dark 模式,适配不同场景。
  • 响应式设计:自动适配桌面与移动端,无需额外配置。
  • 完整 Markdown 语法:覆盖标题、列表、代码高亮、表格、引用等 12 类元素。

潜在缺点与局限性

  • 非标准解析:基于正则或简单状态机实现,对复杂嵌套(如多层列表内嵌代码块)或扩展语法(GFM 任务列表、脚注、数学公式)支持有限。
  • 无实时预览:需手动执行命令查看结果,缺乏开发服务器或热重载。
  • 主题不可定制:仅两种内置主题,无法通过配置文件自定义品牌色或字体。
  • 无 API/库模式:目前仅 CLI 工具,难以作为 Python 模块嵌入其他应用。
  • 图片外链依赖:虽然 CSS 内嵌,但图片仍依赖外部 URL,离线场景需额外处理。

适合人群

  • 技术写作者、开发者文档维护者,需快速生成可分享/可存档的 HTML 文档。
  • 邮件营销或 Newsletter 运营者,需要自包含 HTML 模板用于邮件发送。
  • 追求极简工具链、避免 Node.js/npm 依赖的 Python 生态用户。
  • 离线环境或安全敏感场景(内网文档系统、无网络服务器)。

常规风险

  • XSS 风险:若输入 Markdown 包含未过滤的 HTML 标签或恶意脚本,输出 HTML 可能保留原样,导致浏览器端代码执行。建议在可信源或经过净化后使用。
  • 路径遍历:命令行参数若未校验,可能被利用读取系统敏感文件(如 python main.py ../../../etc/passwd)。
  • 供应链假设:虽然当前零依赖,但若未来引入第三方库,需重新评估依赖树安全。
  • 输出覆盖:默认输出到文件时可能覆盖已有文件,建议配合版本控制或备份策略。

Markdown to HTML 内容

手动下载zip · 3.5 kB
main.pytext/plain
请选择文件