我正在寻找如何迁移 Chrome 扩展程序的数据从一台计算机到另一台计算机。我并不是在寻找迁移扩展安装,而是扩展存储的数据。
通过数据,我指的是普通用户在使用扩展程序时创建的数据。我问的是如何迁移这些数据,而不是扩展程序安装本身。我知道我尝试迁移的扩展程序的数据并不存储在扩展程序的文件夹中,而是像 这样的…\Profile 2\Extensions\eggkanocgddhmamlbiijnphhppkpkmkl
。我不是问迁移所有 Chrome 用户的数据,而是只迁移单个特定扩展程序的数据。
- 到这里,我的问题描述得很透彻。
以下是可能有助于找到解决方案的问题部分。
我的具体用例:
我有标签大纲Chrome 扩展程序。我的数据存储在计算机 1 上。我将以下所有文件/文件夹从计算机 1 复制到计算机 2:
C:\Users\USERNAME\AppData\Local\Google\Chrome\User Data\Profile 2\IndexedDB\chrome-extension_eggkanocgddhmamlbiijnphhppkpkmkl_0.indexeddb.leveldb
C:\Users\USERNAME\AppData\Local\Google\Chrome\User Data\Profile 2\Sync Extension Settings\eggkanocgddhmamlbiijnphhppkpkmkl
C:\Users\USERNAME\AppData\Local\Google\Chrome\User Data\Profile 2\IndexedDB\chrome-extension_eggkanocgddhmamlbiijnphhppkpkmkl_0.indexeddb.blob
C:\Users\USERNAME\AppData\Local\Google\Chrome\User Data\Profile 2\databases\chrome-extension_eggkanocgddhmamlbiijnphhppkpkmkl_0
完成此操作后,我期望发现 Tabs Outliner Computer 2 具有 Computer 1 中的数据。相反,它给我的是空数据,就好像我刚刚安装了扩展一样。
我尝试过但没有效果的解决建议:
▪建议#4:chrome.storage.local.get(function(result){console.log(result)})
从分机页面上的控制台调用。
- 它仅返回一个原型,而不是实际的数据对象。
▪建议 #3:使用 Chrome 开发者工具访问本地存储。
- 不幸的是,它不提供导出/导入整个数据集的任何功能。它仅允许用户手动编辑单元格。
▪建议 #2:使用以下扩展尝试从计算机 1 导出本地存储,然后导入到计算机 2。
▪建议 #1:将位于计算机 1 的扩展文件夹复制…\Profile 2\Extensions\eggkanocgddhmamlbiijnphhppkpkmkl
到计算机 2。
- 由于扩展文件夹的大小非常小,它似乎根本不包含扩展的数据。
- 这个解决方案是由对一个问题的回答提出的问题这似乎与我的重复,但事实并非如此,因为它询问是否使用离线文件在不使用 Google Web Store 的情况下安装 chrome 扩展程序。而我询问的是从一台计算机提取扩展程序的数据,然后将其复制到另一台计算机。
似乎有用的提示:
▪提示 #1:Tabs Outliner 中的数据存储在本地存储。我认为,如果这些本地存储数据是从文件访问的,或者以某种方式复制的,那么工作就完成了。(提示启发者:建议 2 和 3)
▪提示 #2:Tabs Outliner 似乎将数据存储在 IndexedDB 中,以及本地存储中。
答案1
Windows 中还有更多用于存放 Chrome 扩展程序数据的目录。组织者扩展名它存储在以下路径:
C:\Users\[user_name]\AppData\Local\Google\Chrome\User Data\Default\Local Extension Settings\[extension_id]
C:\Users\[user_name]\AppData\Local\Google\Chrome\User Data\Default\Sync Extension Settings\[extension_id]
C:\Users\[user_name]\AppData\Local\Google\Chrome\User Data\Default\IndexedDB\chrome-extension_[extension_id]
根据扩展结构,从/向扩展目录复制文件可能会有所帮助。不一定所有三个目录都已填充/创建(这同样取决于扩展行为)。
只需检查这些并进行实验。
但请事先做好适当的备份!
答案2
根据您的具体使用情况,开发人员概述了迁移“Tabs Outliner”扩展的步骤这里(我已多次遵循这些说明,因此我知道它们有效)。
正如链接中所述,成功迁移数据的诀窍是首先确保在目标 Chrome 上删除扩展程序。然后复制数据。然后在目标 Chrome 上安装扩展程序。然后扩展程序应该使用迁移的数据。
这种方法也适用于大多数其他扩展,前提是 a) 你知道扩展存储数据的位置,并且 b) 没有特定的自定义设置会阻止它工作。因此,最好从扩展的开发人员那里获得有关数据迁移的详细信息。
由于扩展程序之间数据存储的复杂程度不同,通常更容易将整个 Chrome 配置文件复制到另一台计算机,从而避免出现任何问题。在撰写本文时,我已成功将 Chrome 配置文件迁移到另一台使用 Google Chrome 的电脑上,但在尝试使用 Brave 浏览器(v1.43.89 Chromium:105.0.5195.102)时,它重置了我的设置并删除了扩展程序。如果我只是在 Brave 中重新安装扩展程序,那么可能会使用迁移后的扩展程序数据,但我没有尝试这样做。所以,仅仅因为可以在 Google Chrome 中做一件事,并不意味着可以在其他类似的浏览器中做到这一点。幸运的是,可以根据此问题在 Brave 浏览器中单独迁移扩展程序的特定数据。
答案3
我认为克隆应用就是为此而设计的。它是一个用于将软件从一个系统迁移到另一个系统的程序。
答案4
这个怎么样:
备份新系统的用户数据文件夹并将备份文件夹保存在安全的地方。
将旧文件夹的副本移动到新系统的某个位置,但不要替换新系统现有的文件夹。
然后运行“diff”来查找旧系统文件夹和新系统文件夹之间的差异。
将旧系统文件夹中的不同文件复制到新系统上的相应文件夹中。
然后看看它是否有效。(如果没有,您可以从步骤 1 中创建的备份中恢复新系统的文件夹。)