一个浏览器扩展,用于将任意网页内容转换为Markdown格式并下载。
本项目采用浏览器扩展 + Cloudflare Worker 的架构:
- 浏览器扩展:获取页面HTML内容,发送到Worker进行转换,下载转换后的Markdown文件
- Cloudflare Worker:接收HTML内容,使用html-to-md库转换为Markdown,返回转换结果
这种架构避免了跨域和权限问题,支持转换任何可访问的网页内容。
- ✅ 一键转换整页:将整个网页转换为Markdown格式并下载
- ✅ 选择性转换:支持右键菜单,可以只转换选中的文本
- ✅ 区域选择模式:通过可视化界面选择网页的特定区域进行转换
- ✅ 适配各类网站:处理各种不同结构的网页,保留主要内容和格式
-
克隆本仓库到本地:
git clone https://github.com/hewenyu/any2md.git cd any2md -
在Chrome浏览器中打开扩展管理页面:
- 访问
chrome://extensions/ - 开启右上角的"开发者模式"
- 点击"加载已解压的扩展程序"
- 选择仓库中的
extension文件夹
- 访问
- 从Releases页面下载最新版本的
.zip文件 - 解压到本地文件夹
- 按照上述开发版本安装的步骤2进行安装
- 在想要转换的网页上点击浏览器工具栏中的Any2MD图标
- 在弹出的界面中点击"转换"按钮
- 稍等片刻,Markdown文件将自动下载到您的计算机上
- 转换整个页面:在页面空白处右键,选择"将整个页面转换为Markdown"
- 转换选中文本:选中文本后右键,选择"将选定文本转换为Markdown"
- 选择页面区域:在页面空白处右键,选择"选择页面区域进行转换"
- 在右键菜单中选择"选择页面区域进行转换"
- 鼠标悬停在页面元素上会显示蓝色高亮
- 点击要选择的区域,元素会变为绿色并显示勾选标记
- 可以选择多个区域
- 点击右上角控制面板中的"转换选中区域"按钮
- Markdown文件将包含所有选中区域的内容
/extension: 浏览器扩展源代码manifest.json: 扩展配置文件popup.html&popup.js: 弹出界面service-worker.js: 后台服务工作线程scripts/: 注入脚本images/: 图标资源
/markdown-worker: Cloudflare Worker源代码src/index.ts: Worker主代码wrangler.toml: Worker配置文件
/doc: 项目文档
- 克隆仓库后,按照上述安装方法加载扩展
- 修改代码后刷新扩展:
- 在
chrome://extensions/页面点击扩展的刷新图标 - 或者使用Chrome扩展开发工具的热重载功能
- 在
欢迎提交Pull Request或Issue。在提交PR前请确保:
- 代码风格一致
- 所有功能正常工作
- 添加了必要的注释和文档
- 国际化支持(i18n)
- 扩展选项页面
- 支持自定义Worker URL
- 更多Markdown转换选项
- 扩展到其他浏览器(Firefox, Edge等)