為了文字「查詢」的值...

為了文字「查詢」的值...

在 Google Chrome 中,是否可以刪除與特定查詢(例如 en.wikipedia.org)相符的所有搜尋紀錄?

答案1

2019 年 1 月更新

現在 Chrome 支援鍵盤快速鍵CtrlAA


原答案

你可以走黑客捷徑注入 JavaScript 程式碼

步驟1 由於 Chrome 歷史記錄是在 iFrame 內查詢的,因此我們必須存取: chrome://歷史框架/(複製並貼上網址)

第2步 進行搜尋查詢。

步驟3 開啟 Chrome 控制台(F12CtrlShiftii)並執行:

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

步驟4 打 '刪除所選項目' 按鈕。

實際上這會刪除目前頁面中的元素。我可能會嘗試擴展它,但這是一個很好的起點。

答案2

這很簡單。

搜尋您要刪除的內容。選擇第一個。現在捲動到最新結果。按shift並選擇最新的一個。現在所有符合項目都已選擇,您可以將它們一起刪除。


在某些情況下,從歷史記錄結果中刪除位址不足以阻止該位址出現在網址列自動建議中。

在這種情況下,請造訪此處:https://superuser.com/a/273280/121184

答案3

為了文字「查詢」的值...

您甚至可以使用 SQL 查詢您的 Chrome 歷史記錄。 (Firefox 也是如此:見下文。當然,相應的檔案路徑必須更改)。

首先,您需要找到 Chrome 歷史記錄檔。在我的系統上,這是

C:\Documents and Settings\Leonardo Serni\Impostazioni locali\Dati applicazioni\Google\Chrome\User Data\Default

這應該翻譯成比較一般的意思

<USER FOLDER>\Local Settings\Application Data\Google\Chrome\User Data\Default

在那裡,您會找到一個“歷史”文件。這是一個SQLite3文件,要操作它,必須關閉 Chrome。如果你把它弄亂了,刪除歷史檔案並重新開始 - 就像你已經清除了整個 Chrome 歷史記錄一樣。

然後,將檔案重新命名為History.sqlite3並安裝SQLiteMan(或任何其他 SQLite3 編輯器 - 在 Windows 中,按兩下該文件可能足以觸發建議),然後開啟文件(注意一些實用程式可能不需要重新命名。也許先嘗試不重命名,以節省工作)。

在 URLS 表中,您將找到您造訪過的 URL。例如我可以執行查詢:

SELECT * FROM urls WHERE url LIKE '%meetup%';

查看我造訪的 URL 的主機或路徑名稱部分中出現的所有「meetup」。或者我可以搜尋pr0n, 或者...任何事情,只要我遵守 SQL 文法

您甚至可以使用其他資訊來執行查詢,例如上次造訪的時間。請記住,您需要將日期轉換為鍍鉻時間,這是經過的微秒數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;

若要刪除,只需替換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 ..."

只需記住這會刪除你的歷史上你的Chrome 的實例。例如,如果您使用代理,並且該代理程式保存日誌,所有這些 URL 仍將在日誌中可用

更新:此外,如果您使用一些腦死的SQL 工具,要求檔案具有明確且已知的副檔名,那麼您將必須在開始操作之前執行適當的RENAME,並在您完成操作後執行另一個操作以將其恢復正常。

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"

無論如何,一旦這件事完成了,雙擊腳本圖標,嘿,很快!。它也適用於 Firefox;不過,它的時間戳記可能在其他時間參考系中(可能是普通的 Unix),所以在跳入水中之前檢查一下水。

清潔餅乾怎麼樣?

您可能想要對 cookie 而不是歷史記錄執行相同的操作。

但你會注意到,在 Chrome 資料目錄中,除了歷史記錄之外還有其他文件,其中之一名為 Cookies...:-)

先進的軌道覆蓋

上面的 SQL 技巧不僅限於刪除。您可以使用命令修改條目UPDATE;以及刪除後不需要條目,您可以INSERT與適當的時間和日期宏一起使用,讓 Chrome 相信您訪問了一些您實際上並未訪問過的網址,或者在某個時間和日期沒有訪問過的網址。

在某些情況下,這可能會派上用場,因為清理瀏覽器會話會導致不太可能出現有人長時間盯著空白瀏覽器視窗的畫面,並且最好使用某種空閒導航。當然,這是假設沒有人注意到每天有完全相同的導航“模板”

答案4

按住 Shift 並點擊第一個 url 複選框,然後向下捲動到最後一個。這告訴谷歌選擇之間的所有帖子。然後你點擊“刪除”,瞧,該特定 URL 的歷史記錄就消失了

相關內容