指示

指示

我希望能够从 Chrome 浏览器导出密码,以便打印副本。

答案1

下面列出了几种解决方案,但并非所有解决方案都适用于最新版本的 Chrome。目前唯一可靠的解决方案是“官方”的 Google Chrome/Canary 解决方案。其他可能过时的解决方案包括适用于任何操作系统的基于 JS 的解决方案、仅适用于 OSX 的解决方案和仅适用于 Linux 的解决方案(已确认可在 Chrome 68 中使用)。

官方 Chrome 导入/导出按钮

  1. 必需的:安装最新版本谷歌浏览器(如果最新稳定的谷歌浏览器不适合您,请尝试使用Chrome 金丝雀版)。
  2. 使用您的 Google 帐户登录,设置同步,然后等待几分钟,直到所有密码同步。
  3. chrome://flags在地址栏中输入以打开 Chrome Flags 。
  4. 找到并启用选项Password importPassword export,然后重新启动 Chrome Canary。
  5. 现在打开chrome://settings/passwords,您应该会看到一个三个点的图标。单击它将显示IMPORTEXPORT选项:

Chrome 密码导入导出

更新:在较新的 Canary 版本中,不再有导入/导出按钮,而有一个包含选项的三个点按钮Export

基于 Javascript 的解决方案

笔记:从 chrome v60+ 开始,下面描述的方法不再起作用。

一种独立于操作系统的方法是通过 Chrome Javascript API 将 Chrome 密码提取为人类/电子表格可读的格式,如这一页

  1. 打开chrome://settings-frame/passwords在您的浏览器中(也可以通过 Chrome 设置 >显示高级设置...>Chrome 密码)。
  2. 右键单击页面打开 DevTools >检查(或Ctr+Shift+I⌘+⌥+I)。
  3. 单击该Console选项卡。
  4. top单击显示(或)的下拉菜单<top frame>并选择密码框:settings (password),如屏幕截图所示(警告:跳过此步骤将导致错误PasswordManager is not defined): Chrome 开发工具控制台标签
  5. 接下来,将以下代码粘贴到控制台窗格中,然后按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 电子表格,请执行以下操作:

  1. 如果尚未在 Chrome 中同步,请在 Chrome 设置中连接到您的 Google 帐户,以便您的密码与 Google 云存储同步。确保您已勾选密码高级同步设置
  2. 等待一段时间,直至数据同步完成,然后关闭所有 Chrome 窗口。
  3. 使用以下命令行之一启动 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
    
  4. 为新的临时配置文件设置 Google 同步,并等待所有内容从云端同步,即出现书签、显示扩展程序、应用主题等。通过查看设置 → 个人资料 → 管理已保存的密码,验证密码是否从 Google 云恢复。如果没有出现,请再等待几分钟。笔记:要访问存储的密码页面,请打开设置,然后password在右上角的搜索框中管理密码将出现在页面底部。您也可以使用直接链接chrome://settings/passwords

  5. 退出 Chrome。

  6. 接下来,打开终端并cd进入新创建的 Chrome 配置文件:

    cd /tmp/chrome-tmp/Default
    
  7. 现在,Login Data使用 sqlite3 命令行实用程序打开数据库文件并转储登录表。要使其工作,您需要sqlite3在系统上安装(在大多数 Linuces 中已预安装或在存储库中可用)。

    sqlite3 'Login Data'
    
  8. 接下来,在 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 回答的结尾所说的那样,

  1. chrome://settings/passwords
  2. 单击“已保存的密码”最右侧的三个点。
  3. 单击出现的导出菜单项。

ccpizza 提到的 Chrome Canary 功能似乎现已在普通 Chrome 上线。(我目前使用的是 Windows 上的 72 版。)

相关内容