微信公众号文章转Markdown

将微信公众号文章转换为Markdown格式并下载

作者
BigShuaiBee
日安装量
0
总安装量
5
评分
0 0 0
版本
1.2.0
创建于
2025-07-05
更新于
2025-07-05
大小
42.2 KB
许可证
MIT
适用于

微信公众号文章转 Markdown 脚本

一个用于将微信公众号文章转换为 Markdown 格式的用户脚本(UserScript)。

功能特性

  • 🔄 一键转换微信公众号文章为 Markdown 格式
  • 📝 支持文本样式(粗体、斜体、删除线等)
  • 🔗 智能处理链接格式,确保合适的间距
  • 🖼️ 保留图片链接
  • 📋 支持表格转换
  • 📑 支持标题层级
  • 💬 支持引用块
  • 💻 完美支持代码块,保留原始格式和换行
  • 📋 支持有序和无序列表
  • 🎯 智能识别微信公众号特殊HTML结构
  • 🔧 自动处理各种换行符表示方式

安装方法

  1. 安装浏览器扩展(如 Tampermonkey、Greasemonkey 等)
  2. 点击 wechat-article-to-markdown.user.js 文件
  3. 复制脚本内容到用户脚本管理器中
  4. 保存并启用脚本

使用方法

  1. 打开任意微信公众号文章页面
  2. 页面右下角会出现"转换为 Markdown"按钮
  3. 点击按钮即可将文章内容转换为 Markdown 格式
  4. 转换结果会自动复制到剪贴板

版本历史

v1.2.0 (2024-12-19)

  • 🚀 重大改进:完全修复代码块换行问题
  • ✨ 新增 extractCodeText 函数,专门处理代码文本提取
  • 🔧 智能识别和处理微信公众号的各种代码块HTML结构
  • 💻 支持 <br><div><p><span> 等标签的正确换行转换
  • 🎯 增强的回退机制,通过 innerHTML 分析处理特殊情况
  • 🛡️ 改进 cleanMarkdown 函数,保护代码块和行内代码不被误删
  • 📝 处理HTML实体编码(&lt;&gt;&amp;
  • 🔍 智能检测具有特殊样式的代码行(如包含 'line' 类名)

v1.1.0 (2024-12-XX)

  • 🔧 修复链接前面缺少空格分隔的问题
  • ✨ 改进链接与前面文本的间距处理
  • 📖 确保链接在文档中有合适的格式
  • 🎨 提升生成的 Markdown 文件的可读性

v1.0.9

  • 🎉 初始版本发布
  • ✨ 基础的 HTML 到 Markdown 转换功能
  • 🔧 支持常见的文本格式和元素

开发说明

项目结构

wechat-article-to-markdown/
├── wechat-article-to-markdown.user.js  # 主脚本文件
├── test_markdown_converter.py          # 测试文件
├── example.html                        # 示例HTML文件
├── test-complex.html                   # 复杂测试HTML文件
└── README.md                          # 项目说明文档

运行测试

# 安装测试依赖
pip install pytest beautifulsoup4

# 运行测试
pytest test_markdown_converter.py -v

技术实现

  • 使用 JavaScript 原生 DOM API 解析 HTML 结构
  • 递归遍历 DOM 树进行格式转换
  • 智能处理各种 HTML 元素到 Markdown 的映射
  • 专门的代码文本提取算法,处理微信公众号复杂的代码块结构
  • 多层回退机制确保各种情况下的正确转换
  • 保护性文本清理,避免误删代码格式
  • 优化文本间距和格式,提升可读性

贡献指南

欢迎提交 Issue 和 Pull Request 来改进这个脚本!

许可证

MIT License

作者

BigShuaiBee