🐭喂汁,用Python写个专属Markdown转换工具(中)

简介: 一直使用 Markdown 语法编写文章,然后用Markdown转换工具转换下

② 两鞭 → 标题、粗体、段落


h3和h2类似,都是直接将样式文本替换为{{text}}


网络异常,图片无法展示
|


h4稍微麻烦一点,因为前面还传多一个顺序参数:


网络异常,图片无法展示
|


接着重写heading函数,根据不同的level进行渲染:


网络异常,图片无法展示
|


接着传入下述mardown字符串:


网络异常,图片无法展示
|


运行,把渲染后的HTML贴到微信编辑器校验下:


网络异常,图片无法展示
|


可以,效果是针不戳,尔后是粗体及段落样式:


网络异常,图片无法展示
|


运行后,把生成的样式贴到公号编辑器康康效果:


网络异常,图片无法展示
|


换行全没了,原因是:微信会自动滤除文本结点中的\n换行符。 一个简单的解决方法就是:在渲染段落文本时,将\n替换为<br>


修改下渲染处逻辑:


网络异常,图片无法展示
|


校验下效果:


网络异常,图片无法展示
|


③ 三鞭 → 表格、列表


表格的话直接用的微信编辑器自带的表格,样式如下:


网络异常,图片无法展示
|


对应代码如下:


网络异常,图片无法展示
|


mistune需启用plugin_table工具,才能解析表格,提供了下述可供覆盖的函数:


网络异常,图片无法展示
|


写个简单的demo试试康:


网络异常,图片无法展示
|


网络异常,图片无法展示
|


可以看到table_head中获取到了表头的文本结构,其他几个函数同样可获得不同部位的表结构。


但是,我最后还是选择了重写table()函数,因为表格的渲染是连贯的,如果每个函数单独渲染,最后塞到一个<table>里非常麻烦。


另外,公号大多时候是在手机上阅读,屏幕宽就那么点,一般建议两列的表格,这里我另外定义一个类Cell:


网络异常,图片无法展示
|


先来编写模板吧,预期是传入 表头列表表内容列表,然后遍历渲染:


网络异常,图片无法展示
|


模板弄完,接着就是数据处理了,提取表头及表内容,塞到列表中,打印下text:


网络异常,图片无法展示
|


呕吼,直接用lxml提取一波:


网络异常,图片无法展示
|


丢个测试markdown进来:


网络异常,图片无法展示
|


复制生成样式至编辑器,检验下效果:


网络异常,图片无法展示
|


可以,舒服,然后是无序列表,也是使用编辑器自带样式:


网络异常,图片无法展示
|


抠出模板:


网络异常,图片无法展示
|


重写函数渲染模板:


网络异常,图片无法展示
|


传参校验:


网络异常,图片无法展示
|


Tips:把渲染后的HTML贴到编辑器处,空白处按下回车,无序列表才能正确缩进!


相关文章
|
6月前
|
存储 缓存 测试技术
理解Python装饰器:简化代码的强大工具
理解Python装饰器:简化代码的强大工具
|
7月前
|
程序员 测试技术 开发者
Python装饰器:简化代码的强大工具
Python装饰器:简化代码的强大工具
273 92
|
8月前
|
数据安全/隐私保护 Python
微信群成员导出工具, 微信群成员导出软件, 微信群管理工具软件【python】
这个工具提供了完整的微信群成员导出功能,包括登录微信、获取群列表、导出成员信息到Excel等功能
|
6月前
|
机器学习/深度学习 编解码 Python
Python图片上采样工具 - RealESRGANer
Real-ESRGAN基于深度学习实现图像超分辨率放大,有效改善传统PIL缩放的模糊问题。支持多种模型版本,推荐使用魔搭社区提供的预训练模型,适用于将小图高质量放大至大图,放大倍率越低效果越佳。
461 3
|
7月前
|
人工智能 自然语言处理 安全
Python构建MCP服务器:从工具封装到AI集成的全流程实践
MCP协议为AI提供标准化工具调用接口,助力模型高效操作现实世界。
1264 1
|
6月前
|
算法 安全 数据安全/隐私保护
Python随机数函数全解析:5个核心工具的实战指南
Python的random模块不仅包含基础的随机数生成函数,还提供了如randint()、choice()、shuffle()和sample()等实用工具,适用于游戏开发、密码学、统计模拟等多个领域。本文深入解析这些函数的用法、底层原理及最佳实践,帮助开发者高效利用随机数,提升代码质量与安全性。
1033 0
|
7月前
|
API 数据安全/隐私保护 Python
拼多多批量上架软件, 电商一键上货发布工具,python电商框架分享
多线程批量上传架构,支持并发处理商品数据 完整的拼多多API签名和token管理机制
|
7月前
|
安全 API 数据安全/隐私保护
|
7月前
|
Java API 数据安全/隐私保护
淘宝一键上货发布软件,淘宝批量发布上架工具, 淘宝批量上架脚本【python】
这个Python脚本实现了以下功能: 完整的淘宝API调用封装
|
7月前
|
机器人 数据安全/隐私保护 Python
淘宝批量发货发布工具, 淘宝批量上传商品软件, 淘宝批量上架软件【python】
使用Selenium实现自动化操作淘宝卖家后台 支持三种核心功能

推荐镜像

更多