Python Markdown 生成 HTML

Markdown 是一种轻量级的标记语言,它允许你使用易读易写的纯文本格式来编写文档,然后将其转换为结构化的 HTML 文档。

Markdown 的语法简单直观,常用于编写博客、文档、README 文件等。

更多 Markdown 内容参考:Markdown 教程

Python 可以使用 markdown 模块将 Markdown 文本转换为 HTML。


将 Markdown 转换为 HTML 的步骤

1. 安装 markdown

首先,我们需要安装 Python 的 markdown 库,可以使用 pip 来安装它:

pip install markdown

2. 编写 Python 脚本

以下是一个简单的实例,将 Markdown 文本转换为 HTML:

实例

import markdown

# 定义 Markdown 文本
md_text = """
# 这是标题
这是 **加粗** 的文本。
这是 *斜体* 的文本。

- 列表项 1
- 列表项 2

[点击这里](https://www.runoob.com) 访问网站。
"""


# 转换为 HTML
html_output = markdown.markdown(md_text)

# 输出 HTML
print(html_output)

输出结果为:

<h1>这是标题</h1>
<p>这是 <strong>加粗</strong> 的文本。  
这是 <em>斜体</em> 的文本。</p>
<ul>
<li>列表项 1</li>
<li>列表项 2</li>
</ul>
<p><a href="https://www.runoob.com">点击这里</a> 访问网站。</p>

接下来,我们可以编写一个简单的 Python 脚本来将 Markdown 文件(可以把上面实例的 markdown 文本放到文件中)转换为 HTML 文件:

convert_markdown_to_html.py 文件代码:

import markdown

# 读取 Markdown 文件
with open('example.md', 'r', encoding='utf-8') as file:
    markdown_text = file.read()

# 将 Markdown 转换为 HTML
html = markdown.markdown(markdown_text)

# 将 HTML 写入文件
with open('example.html', 'w', encoding='utf-8') as file:
    file.write(html)

print("Markdown 文件已成功转换为 HTML 文件!")

3. 运行脚本

将上述代码保存为 convert_markdown_to_html.py,然后在终端中运行它:

python convert_markdown_to_html.py

运行后,example.md 文件将被转换为 example.html 文件。

代码说明:

import markdown:这行代码导入了 markdown 库,它提供了将 Markdown 文本转换为 HTML 的功能。

with open('example.md', 'r', encoding='utf-8') as file:
    markdown_text = file.read()

这段代码使用 open 函数打开 example.md 文件,并读取其内容到 markdown_text 变量中。

html = markdown.markdown(markdown_text) :这行代码使用 markdown.markdown() 函数将 Markdown 文本转换为 HTML 文本。

with open('example.html', 'w', encoding='utf-8') as file:
    file.write(html)

这段代码将转换后的 HTML 文本写入 example.html 文件中。


扩展功能

markdown 库支持多种扩展,例如表格、代码高亮等。你可以通过以下方式启用扩展:

html = markdown.markdown(markdown_text, extensions=['tables', 'fenced_code'])

你可以根据需要自定义 HTML 输出的样式和结构。

通过 Python 将 Markdown 转换为 HTML 是一个简单而强大的工具,可以帮助你自动化文档生成过程。无论是编写博客、文档还是项目说明,这种方法都能大大提高你的工作效率。希望这篇文章能帮助你快速上手 Python 中的 Markdown 转换功能!


参考资源