20

Currently you can clear browsing data from now up to one day/week/month etc.

Is there a way to do the opposite and clear everything older than one day/week/month?

shinzou
  • 494
  • 1
  • 5
  • 19
  • 1
    Take a look at [eHistory](https://chrome.google.com/webstore/detail/ehistory/hiiknjobjfknoghbeelhfilaaikffopb) extension. You can clear history using a custom date range. – w32sh Jul 20 '16 at 06:38

2 Answers2

12

Unfortunately, it seems that the Chrome developers only catered to adolescents needing to hide browsing history from their parents. Us older people need therefore to use third-party software, or use a database browser to attack directly the history database.

Here are a couple of add-ons that might help. They are not recent, and I do not know if they still work :

In the Do It Yourself way, see the thread How can I delete all web history that matches a specific query in Google Chrome, where two solutions are proposed :

  1. Hacking the Chrome history page itself, chrome://history-frame/, by JavaScript injection, although the described solution deletes all history, so still needs to be improved to work in a selective manner.

  2. Using an SQL viewer to manipulate directly the Chrome History database, normally found under Windows as the file %localappdata%\Google\Chrome\User Data\Default\History, as is detailed in this answer. I suspect that this approach is probably the most likely to work.

harrymc
  • 455,459
  • 31
  • 526
  • 924
  • 1
    [Clear History \[Advance Fork\] extension](https://chrome.google.com/webstore/detail/clear-history-advance-for/kihobnjokffgdfnhjdfiaibalbgfolic) – Totor Mar 29 '19 at 14:12
  • The two mentioned extensions are no longer available. @Totor mentioned a third extension, but it seems it can only keep the last 30 days. – mmortal03 Jun 20 '23 at 05:56
1

You can go to chrome://history/older and Make sure 'Older' is selected. Then you can press F12 to go to developer tools, find "Console" tab and paste and run this code (and wait a while):

var fun = ()=>{setTimeout(() => {document.querySelectorAll('button[title=Delete]').forEach(b => b.click()); console.log('d'); fun();}, 1); }; fun();

It clicks the "Delete" button for each item on the list.

ed22
  • 111
  • 3