Monknow 书签导出工具:从本地存储提取数据并转为标准 HTML 书签

背景

Monknow 是一款新标签页插件,支持网站分组管理和数据云同步。使用一段时间后,我在其收藏夹中积累了相当数量的书签。最近出于备份考虑,我希望将这些数据导出为通用格式,以便本地存档或在需要时迁移到其他新标签页插件。

Monknow 本身没有提供导出功能。我曾尝试联系作者询问是否有可能在后续版本中加入此特性,但未收到回复。这促使我自行寻找技术方案。

之前的尝试

早期我写过一篇博客(Monknow新标签页数据导出),通过浏览器控制台执行 JavaScript 来提取数据。但是还是繁琐了一点。

因此这次主要改用 Python 实现,直接从浏览器本地存储读取数据,一键运行。同时保留了js的脚本。

源码已上传Github。

工具说明

Github:MonknowExporter https://github.com/i-bugmaker/MonknowExporter

包含两个脚本:

文件 说明
export-monknow.py Python 脚本,自动扫描浏览器数据目录,读取并导出书签
export-monknow.js 浏览器控制台脚本,Python 不可用时的备选方案

Python 脚本无需安装第三方库,Python 3.6+ 即可运行。输出为标准 HTML 书签文件(Netscape Bookmark Format),可直接导入 Edge、Chrome、Firefox。

使用方法

bash 复制代码
python export-monknow.py

脚本会自动检测 Edge、Chrome、Firefox 的 Monknow 数据存储位置,解析书签并生成 HTML 文件。如果多个浏览器都检测到 Monknow,会提示选择导出哪一个或全部导出。

输出文件格式为 monknow-{browser}-bookmarks-{timestamp}.html,保留原来的分组目录结构。

当无法运行 Python 时,可使用 export-monknow.js,在 Monknow 新标签页的开发者工具控制台中执行,脚本会自动下载书签文件。

附上演示截图:

数据安全

  • 所有数据仅从本地读取,不会上传到任何服务器
  • 导出的 HTML 文件仅包含书签的 URL 和标题,不含密码或敏感信息
  • 两个脚本均为只读操作,不会修改或删除 Monknow 的原始数据

导入到浏览器

生成的 HTML 文件可通过浏览器的书签管理功能导入:

  • Edge :收藏夹 → 更多选项(...) → 导入收藏夹
  • Chrome:书签管理器 → 整理 → 导入书签
  • Firefox :管理书签(Ctrl+Shift+O) → 导入和备份 → 从 HTML 文件导入书签

总结

这个工具解决了一个比较具体的需求:将 Monknow 中的数据以标准格式导出。实现上涉及浏览器扩展底层存储的读取(Chrome/Edge 的 LevelDB 日志和 Firefox 的 IndexedDB/Snappy 压缩数据),但使用者只需执行一行命令。

如果你也有同样的需求,欢迎使用或参与改进。

相关推荐
默_笙2 天前
🍙 给每个请求过安检:FastAPI 是怎么把校验写进类型注解的
python
qq_426003962 天前
启动playwright录制codegen生成自动化测试脚本
python·自动化
虎头金猫2 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
三十而立洋2 天前
Cookie 详解:从产生到安全,一次讲透
前端·javascript
长沙三为智能科技2 天前
家政小程序开发从0到上线:五阶段交付流程与验收清单
python
伞伞悦读2 天前
【第38期】Python 模块与包详解:import、from、模块搜索路径、包结构和 __init__
开发语言·python
卡布鲁2 天前
把一个 Vite + Vue3 应用塞进 qiankun (React + Umi3) 主站:十个坑的复盘
前端·javascript·react.js
只睡四小时2 天前
Canvas 弹道联机实战:700 行 + 固定时间步长
python·websocket·html5·游戏开发·canvas
李少兄2 天前
JavaScript 隐式全局变量解析
javascript
奇思妙想聪明勤奋的小羊2 天前
DeepAgents第5章:子Agent 与上下文隔离—让 Agent学会委派
人工智能·python·学习·语言模型