用 python 的 markdown 库可直接将 markdown 文本转为 html,需安装 pip install markdown 并调用 markdown.markdown(text);若为纯文本,则应手动分行并用 html.escape() 转义后包裹 标签。

用 Python 的 markdown 库转 Markdown 文本为 HTML
纯文本文档如果本身是 Markdown 格式(带 #、-、``` 等),直接用 markdown 库最省事,不写正则、不碰 DOM。
- 安装:
pip install markdown - 基础用法:
html = markdown.markdown(text),返回字符串,不含或外层 - 常见坑:默认不支持表格、脚注、代码高亮——得加扩展,比如
markdown.markdown(text, extensions=['tables', 'fenced_code']) - 中文标题锚点乱码?加
extension_configs={'toc': {'permalink': True}}并确保源文本用 UTF-8 打开
普通 TXT 直接换行转 HTML 段落(无格式)
如果只是 .txt 文件,没任何标记,想把每行当一段显示在网页里,别用解析器,容易过度设计。
- 读取后用
text.split('\n')切分行,再对每行套<p>{line}</p> - 注意空行:连续空行可能生成多个空
<p></p> <p><span>立即学习</span>“<a href="https://pan.quark.cn/s/cb6835dc7db1" style="text-decoration: underline !important; color: blue; font-weight: bolder;" rel="nofollow" target="_blank">前端免费学习笔记(深入)</a>”;</p>,建议先filter(bool, lines)去掉空白行 - 特殊字符没转义:含
、<code>&的行会破坏 HTML 结构,必须用html.escape(line)(Python 3.2+) - Windows 换行符
\r\n要先统一成\n,否则split('\n')会留\r
用 pandoc 命令行处理多种源格式(含纯文本)
当文档可能混着 .txt、.md、.rst,或需要导出带 CSS、TOC、PDF 的完整 HTML 页面时,pandoc 是更稳的选择。
- 命令示例:
pandoc input.txt -o output.html --standalone --wrap=none -
--standalone加上才有完整 HTML 结构(含和) - 纯文本默认按“段落”处理,但若某行以空格开头,会被识别为代码块——这不是 bug,是 pandoc 的原生规则
- 中文路径或含空格路径必须用引号包裹:
pandoc "my doc.txt" -o out.html,否则报错Could not find file
浏览器里用 JS 快速预览(适合临时调试)
不想装环境、只看一眼效果?用浏览器控制台就能跑,但仅限小文件且不保存。
- 把文本粘进控制台:
const txt = `第一行\n第二行`; - 转 HTML:
txt.split('\n').map(line => `<p>${line}</p>`).join('') - 插入页面:
document.body.innerHTML = htmlString - 风险点:没做
escape,如果txt含<script></script>就直接执行了——这步不能跳 - 大文本(>1MB)会卡死 UI,别试










