我希望能够从 Chrome 浏览器导出密码,以便打印副本。
答案1
下面列出了几种解决方案,但并非所有解决方案都适用于最新版本的 Chrome。目前唯一可靠的解决方案是“官方”的 Google Chrome/Canary 解决方案。其他可能过时的解决方案包括适用于任何操作系统的基于 JS 的解决方案、仅适用于 OSX 的解决方案和仅适用于 Linux 的解决方案(已确认可在 Chrome 68 中使用)。
官方 Chrome 导入/导出按钮
- 必需的:安装最新版本谷歌浏览器(如果最新稳定的谷歌浏览器不适合您,请尝试使用Chrome 金丝雀版)。
- 使用您的 Google 帐户登录,设置同步,然后等待几分钟,直到所有密码同步。
chrome://flags
在地址栏中输入以打开 Chrome Flags 。- 找到并启用选项
Password import
和Password export
,然后重新启动 Chrome Canary。 - 现在打开
chrome://settings/passwords
,您应该会看到一个三个点的图标。单击它将显示IMPORT和EXPORT选项:
更新:在较新的 Canary 版本中,不再有导入/导出按钮,而有一个包含选项的三个点按钮Export。
基于 Javascript 的解决方案
笔记:从 chrome v60+ 开始,下面描述的方法不再起作用。
一种独立于操作系统的方法是通过 Chrome Javascript API 将 Chrome 密码提取为人类/电子表格可读的格式,如这一页:
- 打开chrome://settings-frame/passwords在您的浏览器中(也可以通过 Chrome 设置 >显示高级设置...>Chrome 密码)。
- 右键单击页面打开 DevTools >检查(或Ctr+Shift+I或⌘+⌥+I)。
- 单击该Console选项卡。
- top单击显示(或)的下拉菜单<top frame>并选择密码框:settings (password),如屏幕截图所示(警告:跳过此步骤将导致错误
PasswordManager is not defined
): - 接下来,将以下代码粘贴到控制台窗格中,然后按Enter(基于来自的代码https://github.com/megmage/chrome-export-passwords已清理并可在 Chrome v50+ 上运行):
var out = [];
var pm = PasswordManager.getInstance();
var model = pm.savedPasswordsList_.dataModel;
console.log(model);
var pl = pm.savedPasswordsList_;
for (var i = 0; i < model.length; i++) {
PasswordManager.requestShowPassword(i);
}
alert('After you press Ok results should appear in ~5 seconds.\n' +
"If password fields are empty, try increasing the timeout in the last line," +
" i.e. set to 10000 for 10 seconds");
setTimeout(
function () {
out.push('# Generated by Password Exporter; Export format 1.1; Encrypted: false');
out.push('"hostname","username","password","formSubmitURL","httpRealm","usernameField","passwordField"');
for (var i = 0; i < model.length; i++) {
var record = model.array_[i];
var user = record.username;
var item = pl.getListItemByIndex(i);
var pass = item.querySelector('div.password input').value;
var proto = record.url.split('://')[0];
var line = `"${proto}://${record.shownOrigin}", "${user}", "${pass}", "${record.url}", ," "," "," "`;
out.push(line);
console.log(line);
}
document.body.innerText = out.join('\n');
}, 5000);
重要的:此代码适用于 Chrome v50 及以上版本。对于早期版本,请使用原文中链接的代码github 页面。
密码应以 CSV 格式显示在同一页面上。选择并将输出复制到.CSV
扩展名为文本的文件 — 可以在 Excel/Libreoffice Calc 中打开。该格式兼容Firefox 密码导出器,并可用于将密码导入Firefox。
OSX 用户须知
OSX 版 Google Chrome/Chromium 的最新版本将密码存储在系统钥匙串中,这意味着 Chrome 使用 OSX 内置的凭证存储机制(这已经是过时的信息了)。
在 OSX 上,您可以通过在终端运行以下命令来导出密码:
sudo security dump-keychain -d login.keychain > keychain.txt
是的,你需要点击允许全部只要您的登录钥匙串中有域名,除非您使用自动点击器脚本。该链接还指向用于将生成的密码文件转换为 CSV 的 ruby 脚本。在我删除包含 的行之后,Ruby 脚本就可以正常工作了proto.gsub!('htps', 'https');
。
或者,你也可以使用原生 OSX 应用钥匙串访问(在 Spotlight 中输入名称)。
笔记:正如所指出的皇带鱼,Chrome 从 v.45 开始停止使用 OSX Keychain。
仅限 Linux 的密码导出解决方案
此解决方案在当前版本的 Chrome(v68)中仍然有效
以下食谱是仅限 Linux解决方案,并从中获取博客文章我之前创建过。要将密码导出到可以在 LibreOffice 或 Excel 中打开的 CSV 电子表格,请执行以下操作:
- 如果尚未在 Chrome 中同步,请在 Chrome 设置中连接到您的 Google 帐户,以便您的密码与 Google 云存储同步。确保您已勾选密码在高级同步设置。
- 等待一段时间,直至数据同步完成,然后关闭所有 Chrome 窗口。
使用以下命令行之一启动 Chrome/Chromium。这将使用自定义配置文件文件夹启动 Chrome,而不会影响您当前的 Chrome 配置文件。
## for Chrome: google-chrome --user-data-dir=/tmp/chrome-tmp --password-store=basic ## for Chromium: chromium --user-data-dir=/tmp/chrome-tmp --password-store=basic
为新的临时配置文件设置 Google 同步,并等待所有内容从云端同步,即出现书签、显示扩展程序、应用主题等。通过查看设置 → 个人资料 → 管理已保存的密码,验证密码是否从 Google 云恢复。如果没有出现,请再等待几分钟。笔记:要访问存储的密码页面,请打开设置,然后
password
在右上角的搜索框中管理密码将出现在页面底部。您也可以使用直接链接chrome://settings/passwords
。退出 Chrome。
接下来,打开终端并
cd
进入新创建的 Chrome 配置文件:cd /tmp/chrome-tmp/Default
现在,
Login Data
使用 sqlite3 命令行实用程序打开数据库文件并转储登录表。要使其工作,您需要sqlite3
在系统上安装(在大多数 Linuces 中已预安装或在存储库中可用)。sqlite3 'Login Data'
接下来,在 SQLite 提示符下输入以下命令。如需有关可用命令的帮助,请
.help
在提示符下输入。.mode csv # other options are `html', `tabs', etc. .headers on .separator "," .output chrome_passwords.csv select * from logins; .exit
现在您应该有一个名为的文件,chrome_passwords.csv
其中包含所有 Chrome 密码。要使用 LibreOffice 打开它,请键入:
libreoffice --calc chrome_passwords.csv
该Login Data
文件可以直接用 SQLite GUI 应用程序打开,例如sqlite浏览器,sqliteman或者sqlitestudio,其中前两个通常在 Linux 存储库中可用。
答案2
Chrome通行证看起来就是您想要的工具。有保存为 HTML 和纯文本的选项,这两种格式都很容易打印。
答案3
在这里找到最简单的解决方案:https://www.axllent.org/docs/view/export-chrome-passwords/
自 2016 年 7 月/8 月起,Google 推出了一项隐藏功能,允许您导入和导出密码。您目前需要做的就是在设置中打开隐藏功能chrome://flags
并重新启动浏览器,之后您将获得所需的功能。
指示
- 在您的 Google Chrome(或 Chromium,无论您使用哪个)中,在 URL 栏中输入以下内容:
chrome://flags/#password-import-export
,然后启用该功能。 - 重新启动浏览器。
- 转到您的密码
chrome://settings/passwords
(您可能需要等待一段时间才能同步密码),然后向下滚动到密码下方,您将看到两个新按钮,导入和导出。 - 单击“导出”,确保选择正确的格式(CSV)。
答案4
就像 ccpizza 回答的结尾所说的那样,
- 去
chrome://settings/passwords
。 - 单击“已保存的密码”最右侧的三个点。
- 单击出现的导出菜单项。
ccpizza 提到的 Chrome Canary 功能似乎现已在普通 Chrome 上线。(我目前使用的是 Windows 上的 72 版。)