如何删除与 Google Chrome 中特定查询匹配的所有网络历史记录

And*_*een 105 google-chrome

在 Google Chrome 中,是否可以删除与特定查询(例如 en.wikipedia.org)匹配的所有搜索历史记录?

Poo*_*hri 144

这很简单。

搜索您要删除的内容。选择第一个。现在滚动到最新结果。按下shift并选择最新的。现在选择了所有匹配项,您可以将它们一起删除。


在某些情况下,从历史结果中删除地址不足以阻止该地址出现在 url 栏自动建议中。

在这种情况下,请访问此处:https : //superuser.com/a/273280/121184

  • @AndersonGreen 这是正确的答案,而不是法布里西奥的。 (5认同)
  • 或者你可以走黑客的捷径,见我下面的回答;) (2认同)
  • “ctrl + a”确实选择了所有可见元素 (2认同)

Rud*_*eal 93

2019 年 1 月更新

现在 Chrome 支持键盘快捷键CtrlA?A


原答案

您可以采取注入 JavaScript 代码的黑客捷径。

Step 1 由于在 iFrame 中查询 Chrome 历史记录,我们必须访问: chrome://history-frame/(复制并粘贴 URL)

步骤 2 执行搜索查询。

步骤 3 打开 Chrome 控制台(F12CtrlShifti??i)并执行:

var inputs = document.getElementsByTagName('input');
for (var i = 0; i < inputs.length; ++i) {
  if (inputs[i].type == "checkbox"){
    inputs[i].checked = true;
  }
}
document.getElementById("remove-selected").disabled = false
Run Code Online (Sandbox Code Playgroud)

第 4 步 点击“删除所选项目”按钮。

实际上这会删除当前页面中的元素。我可能会尝试扩展它,但这是一个很好的起点。

  • 此解决方案已过时:只需点击“ctrl + a” (5认同)
  • 这不再起作用了。document.getElementsByTagName('input') 返回空数组。 (3认同)
  • @FabricioPH 我在 chrome://history 而不是“chrome://history-frame”中运行脚本,这就是为什么它对我不起作用。它在框架内运行良好。 (3认同)
  • 这很棒!起初我在一个不同的选项卡中运行它,但它不起作用(事后看来,出于逻辑上可以实现的原因。)所以我在与 chrome://history-frame 相同的选项卡中重新打开控制台,并且一切正常。 (2认同)
  • 正确答案是“滚动到底部,然后按 CTRL-A,然后删除” (2认同)

LSe*_*rni 20

对于“查询”的字面值...

您甚至可以使用 SQL 查询 Chrome 历史记录。(Firefox 也是:见下文。当然,必须更改相应的文件路径)。

首先,您需要找到 Chrome 历史记录文件。这是,在我的系统上,在

C:\Documents and Settings\Leonardo Serni\Impostazioni locali\Dati applicazioni\Google\Chrome\User Data\Default
Run Code Online (Sandbox Code Playgroud)

这应该翻译成更一般的

<USER FOLDER>\Local Settings\Application Data\Google\Chrome\User Data\Default
Run Code Online (Sandbox Code Playgroud)

在那里,您会找到一个“历史”文件。它是一个 SQLite3 文件,要操作它,必须关闭 Chrome。如果你把它弄得一团糟,删除历史文件并重新开始 - 就像你清除了整个 Chrome 历史一样。

然后,将文件重命名为History.sqlite3并安装SQLiteMan(或任何其他 SQLite3 编辑器 - 在 Windows 中,双击该文件可能足以触发建议),然后打开该文件(注意某些实用程序可能不需要重命名。也许尝试先不重命名,以节省工作)。

在 URLS 表中,您将找到您访问过的 URL。例如,我可以运行查询:

SELECT * FROM urls WHERE url LIKE '%meetup%';
Run Code Online (Sandbox Code Playgroud)

查看我访问过的 URL 的主机或路径名部分中所有出现的“meetup”。或者我可以搜索pr0n,或者...任何东西,只要我遵守 SQL 语法

您甚至可以使用其他信息来运行查询,例如上次访问的时间。请记住,您需要将日期转换为Chrome 时间,即从1601 年 1 月 1 日起经过的微秒数。在 Unix 机器上,键入date +%s将告诉您秒数;乘以一百万,再加上 11644473600 就完成了。

例如,选择 2013 年 10 月 1 日之后的访问:

SELECT * FROM urls WHERE ((last_visit_time/1000000)-11644473600) - 
    strftime('%s', '2013-10-01 00:00:00') > 0;
Run Code Online (Sandbox Code Playgroud)

要删除,只需替换SELECT *DELETE并按 F9 即可执行查询。

您可以使用NOW()代替当前日期和任何其他SQLite 语法

(以防万一,“存档历史”文件包含 Chrome 存档的最后一个历史记录)。

完成后,如果需要,将文件重命名为“历史记录”。

自动化:一键消毒

您需要一个命令行 SQLite 实用程序,例如sqlite3sql3tool。然后你编写一个脚本或批处理文件,用适当的路径修改下面的代码(你不想清除我的历史而不影响你的历史,是吗?):

# ENSURE CHROME IS CLOSED (pskill by SysInternals might be useful)
echo "DELETE * FROM urls WHERE url LIKE '%facebook%' OR url LIKE '%twitter%';" | sql3tool "C:\Documents and Settings\Leonardo Serni\Impostazioni locali\Dati applicazioni\Google\Chrome\User Data\Default\History"
echo "DELETE * FROM urls WHERE url LIKE '%porn%' OR url LIKE '%my-employer-is-a-moron%';" | sql3tool "C:\Documents and Settings\Leonardo Serni\Impostazioni locali\Dati applicazioni\Google\Chrome\User Data\Default\History"
echo "DELETE * FROM urls WHERE url LIKE ..."
Run Code Online (Sandbox Code Playgroud)

只记得这将删除你的历史你的Chrome实例。例如,如果您使用代理,并且该代理保留日志,则所有这些 URL 仍将在日志中可用

更新:此外,如果您使用一些需要文件具有显式和已知扩展名的脑残 SQL 工具,则必须在开始操作之前执行适当的重命名,并在执行另一个操作时将事情放回原位已经完成:

REN "C:\Documents and Settings\Leonardo Serni\Impostazioni locali\Dati applicazioni\Google\Chrome\User Data\Default\History" "C:\Documents and Settings\Leonardo Serni\Impostazioni locali\Dati applicazioni\Google\Chrome\User Data\Default\History.sqlite3"
echo "DELETE * FROM urls WHERE url LIKE '%facebook%' OR url LIKE '%twitter%';" | sql3tool "C:\Documents and Settings\Leonardo Serni\Impostazioni locali\Dati applicazioni\Google\Chrome\User Data\Default\History.sqlite3"
REN "C:\Documents and Settings\Leonardo Serni\Impostazioni locali\Dati applicazioni\Google\Chrome\User Data\Default\History.sqlite3" "C:\Documents and Settings\Leonardo Serni\Impostazioni locali\Dati applicazioni\Google\Chrome\User Data\Default\History"
Run Code Online (Sandbox Code Playgroud)

无论如何,一旦完成,双击脚本图标,嘿嘿!,您的 Chrome 历史记录已清理。它也适用于 Firefox;不过,它的时间戳可能在其他时间参考系中(可能是普通的 Unix),所以在跳入之前检查水。

清洁饼干怎么样?

您可能希望对 cookie 而不是 History 做同样的事情。

但是您会注意到,在 Chrome 数据目录中,除了 History 之外的其他文件,其中之一名为 Cookies ... :-)

高级轨道覆盖

上面的 SQL 技巧不仅限于删除。您可以使用UPDATE命令修改条目;删除不需要的条目后,您可以使用INSERT适当的时间和日期宏,让 Chrome 相信您访问了一些实际上没有访问过的 URL,或者在某个时间和日期没有访问过。

在这些情况下,这可能会派上用场,因为清理浏览器会话会导致不太可能出现某人长时间盯着空浏览器窗口的画面,并且最好使用某种空闲导航。当然,这是假设没有人注意到每天都有完全相同的导航“模板”


小智 12

您可以访问 chrome://history 或 chrome://history-frame。在页面上,您可以开始搜索,当列出所有结果时,只需点击CTRL + A以选择所有可见项目。再次按下它会取消选择所有项目。

使用选定的项目只需通过DEL键删除它们。


小智 5

通过按住 shift 并单击第一个 url 复选框,然后向下滚动到最后一个。这告诉谷歌选择两者之间的所有帖子。然后你点击“删除”,瞧,该特定 URL 的历史记录消失了


归档时间:

查看次数:

112429 次

最近记录:

4 年,4 月 前