在Python中将markdown转换为漂亮的网页
Editor's Note
在Python中方便快捷地转换markdown文档为漂亮的交互式网页!
The following article is from 玩转Dash Author 费弗里
【玩转dash】公众号后台回复关键词【加群】加入技术交流区
大家好我是费老师,就在今天,由费老师我开源维护的Python
库feffery-markdown-components
(简称fmc
)正式发布了其0.1.0
版本(官网地址:http://fmc.feffery.tech/ ),基于它,我们可以在Python
中,非常方便快捷地将我们的markdown
文档直接转换成方便访问浏览的网站!
使用起来非常方便,它基于Python
中大名鼎鼎的Dash
框架,下面我们来简要看一下该如何使用fmc
,内容摘抄自我为fmc
开发的在线文档:
环境搭建
为了方便演示,我们先来搭建环境,这里使用conda
搭建虚拟环境,在你的终端中直接粘贴下面的全部命令执行即可:
conda create -n dash-dev-demo python=3.8 -c https://mirrors.sjtug.sjtu.edu.cn/anaconda/pkgs/main -y
conda activate dash-dev-demo
pip install dash feffery-antd-components -i https://pypi.tuna.tsinghua.edu.cn/simple
基本使用示例
通过上述方式完成环境搭建后,我们新建一个app.py
文件,代码如下,然后在对应目录下执行python app.py
,再浏览器访问你本机的127.0.0.1:8050
地址即可:
app.py
import dash
from dash import html
import feffery_markdown_components as fmc
app = dash.Dash(__name__)
raw_markdown = '''
### 1 标题
在文字写书写不同数量的`#`可以完成不同的标题,如下:
# 一级标题
## 二级标题
### 三级标题
### 2 无序列表
无序列表的使用,在符号`-`后加空格使用。如下:
- 无序列表 1
- 无序列表 2
- 无序列表 3
如果要控制列表的层级,则需要在符号`-`前使用空格。如下:
- 无序列表 1
- 无序列表 2
- 无序列表 2.1
- 无序列表 2.2
### 3 有序列表
有序列表的使用,在数字及符号`.`后加空格后输入内容,如下:
1. 有序列表 1
2. 有序列表 2
3. 有序列表 3
'''
app.layout = html.Div(
[
fmc.FefferyMarrkdown(
markdownStr=raw_markdown
)
]
)
if __name__ == '__main__':
app.run()
不出意外的话你就会看到类似下面由我们定义的markdown
内容所渲染出的网页内容:
这只是fmc
的基础能力,除此之外,它还支持数十种代码主题切换(代码块渲染结果自带复制按钮):
数学公式渲染:
原生HTML渲染等诸多功能:
以上内容均来自于我为fmc
开发的在线文档官网(http://fmc.feffery.tech/
),欢迎访问学习更多~
如果你对Dash
应用开发感兴趣,欢迎在【玩转dash】公众号后台回复【进群】加入交流群参与更多学习讨论,一起走在国内Dash
应用技术前沿🥳