我在 Firefox 中有超过 100,000 个书签。我想将它们保存在联系人数据库中,这样就不会丢失它们,也更易于管理。
该 html 文件的大小为 55meg。
我该如何做呢?
答案1
默认情况下,书签导出是一个 JSON 文件。
因此,如果您有一些开发技能,我建议使用处理 JSON 结构化数据的 NoSQL 数据库。Apache CouchDB就是这样一款工具。它在资源占用方面相当轻量,我在我的 Windows 7 笔记本电脑上将它作为服务运行,并且可以证明它不会妨碍我。
Node.js 是编写前端的好方法,但还有许多其他选项,包括内置的 Web 控制台 - Futon ( http://localhost:5984/_utils/
)。有一个入门指南这里。
更新:要将您的书签添加到名为“ff-bookmarks”的空数据库,如果您安装了 CURL,则可以使用以下命令(我在这里使用 Windows cmd 提示符):
curl -X POST http://localhost:5984/ff-bookmarks -d @bookmarks-2014-01-20.json -H "Content-Type:application/json"
该@
符号告诉 curl 您想要加载具有以下名称的文件。需要使用 -H 来告诉 curl 要传递给 CouchDB 的正确内容类型。使用 POST 意味着 Couch 将为条目创建内部 UID。
您应该收到如下回复:
{"ok":true,"id":"349eb4f32fc6f0c85cbcc473160018dd","rev":"1-31384010a78f57165177d9bfb6cd1b53"}
您现在可以使用 Futon 检查内容。
更新 2:这里有一个地图功能,您可以使用它来开始解压结构,并可能让您了解如何继续:
function(doc) {
for each (child in doc.children) {
if (child.title == "Bookmarks Menu") {
for each (child1 in child.children) {
if (child1.title) {
emit(child1.title, child1);
}
}
}
}
}
需要注意的是,CouchDB 允许您指定输出,而不仅仅是 JSON!您可以轻松定义一个设计文档,该文档将根据需要以 XML 或 HTML 形式返回输出。