从places.sqlite文件恢复书签

wlsrxk51  于 2023-11-21  发布在  SQLite
关注(0)|答案(1)|浏览(259)

我在使用Firefox中的标准导出功能将Firefox中的数千个书签导出到HTML文件时遇到问题。我得到以下错误:

*************************
A coding exception was thrown and uncaught in a Task.

Full message: TypeError: root is undefined
Full stack: BookmarkExporter@resource://gre/modules/BookmarkHTMLUtils.jsm:980:1
BHU_exportToFile/<@resource://gre/modules/BookmarkHTMLUtils.jsm:228:22
TaskImpl_run@resource://gre/modules/Task.jsm:314:40
Handler.prototype.process@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:865:23
this.PromiseWalker.walkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:744:7

*************************

字符串
参见https://gist.github.com/rubo77/12ef9be4060c7935c74c
有没有办法在控制台上导出我的书签,这样我就可以将它们导入到一个新的firefox配置文件中?
最新消息:我成功地将一个firefox示例的“管理书签”菜单中的所有书签复制并粘贴到另一个同时打开新配置文件的示例中(使用命令行选项-no-remote),但不幸的是,这仍然没有复制我的书签所使用的标签,这也是一个巨大的损失。

9lowa7mx

9lowa7mx1#

书签保存在您的配置文件目录[ 1 ]下(例如,在Linux下类似于~/.mozilla/firefox/rbbfa46q.default的位置,或者在快照版本中,在~/snap/firefox/common/.mozilla/firefox/rbbfa46q.default中),存储在文件places.sqlite中,这是一个SQLite 3.x数据库。您可以将其作为每个SQLite数据库文件进行管理。
由于键中可能存在冲突,至少在原则上,我建议导出为HTML链接列表,然后在第二个Firefox帐户中导入。
下面是一个实际上能够创建这个列表的命令,正如另一个答案[ 2 ]中所报告的那样。

sqlite3 places.sqlite "select '<a href=''' || url || '''>' || moz_bookmarks.title || '</a><br/>' as ahref from moz_bookmarks left join moz_places on fk=moz_places.id where url<>'' and moz_bookmarks.title<>''" > t1.html

字符串
然后你可以使用你觉得更舒适的导入方法。

备注

  • 当然也有插件作为 “SQLite管理器” 来管理它从内部Netscape.

相关问题