需在Dify工作流中添加Python代码节点并运行markdown库转换:选“代码”节点→语言选Python→粘贴含markdown.markdown()的脚本,不可选JavaScript或Shell以避免依赖错误。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

在Dify工作流中启用Markdown转HTML节点
你需要让Dify工作流自动把AI生成的Markdown内容渲染成可直接预览的HTML页面,而不是只输出原始文本。
进入Dify控制台→工作流编辑页→点击“+ 添加节点”→选择“代码”类型节点→在语言下拉菜单中选“Python”。
这一步不能选“JavaScript”或“Shell”,因为Dify内置的Python运行时已预装markdown库,而其他环境需手动配置依赖,极易报错ModuleNotFoundError。
在代码框中粘贴以下最小可用脚本:
```python
import markdown
html = markdown.markdown(input.get("text", ""), extensions=['fenced_code', 'tables', 'extra'])
output = {"html": f"
【input.get("text", "")必须显式指定,默认键名不是content或md】——很多用户卡在这一步,因上游节点输出字段名不一致导致input为空,最终生成空白HTML。
解决中文乱码与样式缺失问题
生成的HTML在浏览器里打开显示方块字、代码块无高亮、表格边框消失,本质是缺少字符声明和CSS注入。
方法一:用强制UTF-8并内联基础样式
把原代码中的HTML包裹部分替换成:
把任意文章或文档内容转换成精美的全屏翻页 HTML 演示文件(幻灯片风格)。当用户发来一篇文章、文档链接、Markdown 内容、或粘贴的文本,并且希望生成演示用的 HTML 时触发。支持任意内容来源:iWiki 链接、KM 链接、本地文件路径、直接粘贴的文本。生成的 HTML 文件保存到本地工作区,并通过企微直接发送给用户。触发词示例:帮我把这篇文章做成PPT、转成演示文档、生成HTML幻灯片、做个演示、转成可以演示的格式、article to deck、make a slide。
f"
{html}"
方法二:用codehilite扩展激活Pygments语法高亮(需确认Dify Python环境已装pygments)
将extensions参数改为:['fenced_code', 'tables', 'extra', 'codehilite(css_class="highlight")'],再在
注意:若Dify后台未预装pygments,此方法会触发ImportError,此时应降级回方法一。
批量处理多个Markdown片段并合并为单页HTML
当你需要把工作流中多个Answer节点输出的Markdown段落(如摘要、分析、建议)拼成一份完整报告时,不能简单用+连接字符串——标题层级会错乱,重复的标签会导致浏览器解析失败。
第一步:确保上游所有Markdown输出节点都通过“聚合”节点汇总,输出格式为列表,例如:{"sections": [{"title": "摘要", "content": "# 摘要\n内容..."}, {"title": "分析", "content": "# 分析\n内容..."}]}。
第二步:在Python代码节点中,先提取列表,再逐段转换,最后用
```python
import markdown
sections = input.get("sections", [])
html_parts = []
for sec in sections:
title = sec.get("title", "")
content = sec.get("content", "")
if title and content:
# 为每段加独立section容器,避免h1冲突
rendered = markdown.markdown(content, extensions=['fenced_code', 'tables', 'extra'])
html_parts.append(f"{title}
{rendered}
full_html = "
output = {"html": full_html}
```
第三步:将该节点的输出字段设为html,下游接“HTTP响应”或“文件下载”节点即可导出完整HTML文件。
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!










