koala9527
8.6D
1.59D
V2EX  ›  DeepSeek

[分享] 撸了一个全自动微信公众号发文 Workflow(n8n + DeepSeek + Gemini),顺便开源了 mdnice 转换工具

  •  1
     
  •   koala9527 · Jan 13 · 1824 views
    This topic created in 149 days ago, the information mentioned may be changed or developed.
    最近在折腾自动化内容产出,发现微信公众号的排版和发布流程非常割裂。虽然 mdnice 很好用,但它没有官方 API ,很难集成到自动化流里。

    于是自己动手撸了一套方案,并把其中最关键的 Markdown 转微信排版 环节封装成工具开源了。

    技术栈:

    n8n:作为全流程自动化编排中心。

    DeepSeek:负责高质量文本生成。

    Gemini (Image Generation):根据内容自动生成配图作为头图。

    自建 API (markdown2wechat):解析 mdnice 主题并将 MD 转换为适合微信预览的 HTML 格式。

    全流程逻辑:

    定时触发或 Webhook 触发。

    调用 DeepSeek API 生成符合排版规范的 Markdown 。

    调用 Gemini 生成文章封面图并自动上传。

    通过我的工具接口,将 MD 自动套用 mdnice 主题模板并转换为 HTML 。

    推送到草稿箱。

    工具开源地址: https://github.com/koala9527/markdown2wechat

    欢迎 V 友们拍砖,如果大家有更好的全自动发布 API 思路也欢迎交流。


    Supplement 1  ·  Jan 13
    被 AI 折磨了好几天,逆向 mdnice 主题翻译逻辑一直有问题,现在终于勉强能用了

    用 AI 生成代码这个黑盒子去模拟 mdnice 主题转换的黑盒子
    7 replies    2026-01-13 13:41:49 +08:00
    pol
        1
    pol  
       Jan 13
    start 下,后面试试
    waityan
        2
    waityan  
       Jan 13
    试下 skill /wechat-article-writer 文本的质量就很好
    allplay
        3
    allplay  
       Jan 13 via Android
    这就是新一代的内容农场
    allplay
        4
    allplay  
       Jan 13 via Android
    这种内容农场号,看到一个屏蔽一个
    koala9527
        5
    koala9527  
    OP
       Jan 13
    @waityan 好的,我去看看,谢谢分享
    mephisto
        6
    mephisto  
       Jan 13
    (markdown2wechat) ➜ markdown2wechat git:(main) uv run python main.py
    Traceback (most recent call last):
    File "/home/mephisto/github/markdown2wechat/main.py", line 10, in <module>
    from mdnice_transform import transform_to_mdnice_format
    File "/home/mephisto/github/markdown2wechat/mdnice_transform.py", line 11, in <module>
    from bs4 import BeautifulSoup, NavigableString, Tag
    ModuleNotFoundError: No module named 'bs4'
    (markdown2wechat) ➜ markdown2wechat git:(main) uv run python main.py
    Traceback (most recent call last):
    File "/home/mephisto/github/markdown2wechat/main.py", line 10, in <module>
    from mdnice_transform import transform_to_mdnice_format
    File "/home/mephisto/github/markdown2wechat/mdnice_transform.py", line 11, in <module>
    from bs4 import BeautifulSoup, NavigableString, Tag
    ModuleNotFoundError: No module named 'bs4'
    (markdown2wechat) ➜ markdown2wechat git:(main) vim pyproject.toml
    (markdown2wechat) ➜ markdown2wechat git:(main)
    (markdown2wechat) ➜ markdown2wechat git:(main) uv add bs4
    Resolved 49 packages in 974ms
    Prepared 3 packages in 219ms
    Installed 3 packages in 6ms
    + beautifulsoup4==4.14.3
    + bs4==0.0.2
    + soupsieve==2.8.1
    (markdown2wechat) ➜ markdown2wechat git:(main) ✗ uv run python main.py
    INFO: Started server process [21843]
    INFO: Waiting for application startup.
    INFO: Application startup complete.
    INFO: Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to quit)
    INFO: 127.0.0.1:58716 - "GET / HTTP/1.1" 200 OK
    INFO: 127.0.0.1:58716 - "GET /api/themes HTTP/1.1" 200 OK
    INFO: 127.0.0.1:58716 - "GET /favicon.ico HTTP/1.1" 404 Not Found
    INFO: 127.0.0.1:58716 - "POST /api/convert HTTP/1.1" 200 OK
    INFO: 127.0.0.1:38146 - "POST /api/convert HTTP/1.1" 200 OK
    需要把 bs4 加到依赖,这个转换工具还不错,对我来说有用,谢谢楼主。主题都感觉不怎么好看,代码高亮也没有
    koala9527
        7
    koala9527  
    OP
       Jan 13
    @mephisto 优先使用 next 框架的转换吧,fastapi 的我还没有亲自验证,我还会继续优化的。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5168 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 39ms · UTC 03:51 · PVG 11:51 · LAX 20:51 · JFK 23:51
    ♥ Do have faith in what you're doing.