it-swarm.com.de

Wie kann ich das gesamte Webprotokoll löschen, das einer bestimmten Abfrage in Google Chrome entspricht?

Ist es in Google Chrome möglich, den gesamten Suchverlauf zu löschen, der einer bestimmten Suchanfrage entspricht (z. B. en.wikipedia.org)?

72
Anderson Green

Update Januar 2019

Jetzt unterstützt Chrome die Tastenkombination CtrlA oder A


Ursprüngliche Antwort

Sie können die Hacker-Verknüpfung verwenden, um JavaScript-Code einzufügen.

Schritt 1 Da der Chrome-Verlauf in einem iFrame abgefragt wird, müssen wir Folgendes besuchen: chrome: // history-frame/ (URL kopieren und einfügen)

Schritt 2 Führen Sie die Suchabfrage durch.

Schritt 3 Öffnen Sie die Chrome-Konsole (F12 oder CtrlShifti oder i) und führe aus:

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

Schritt 4 Klicken Sie auf die Schaltfläche ' Ausgewählte Elemente entfernen '.

Tatsächlich werden die Elemente auf der aktuellen Seite gelöscht. Ich könnte versuchen, es zu erweitern, aber es ist ein guter Ausgangspunkt. Lesen Sie den vollständigen Artikel in meinem Blog.

52
Fabricio PH

Das ist einfach und leicht.

Suchen Sie nach dem, was Sie entfernen möchten. Wählen Sie den ersten aus. Scrollen Sie nun zum neuesten Ergebnis. Drücken Sie shift & wähle die neueste. Jetzt sind alle Übereinstimmungen ausgewählt und können gemeinsam entfernt werden.


In einigen Fällen reicht das Entfernen einer Adresse aus den Verlaufsergebnissen nicht aus, um zu verhindern, dass diese Adresse in den automatischen Vorschlägen der URL-Leiste angezeigt wird.

In diesem Fall besuchen Sie hier: https://superuser.com/a/273280/121184

124
Pooya Estakhri

Für Literal Werte von "query" ...

Sie können Ihren Chrome-Verlauf sogar mit SQL abfragen. (Auch Firefox: siehe unten. Natürlich muss der entsprechende Dateipfad geändert werden).

Zunächst müssen Sie die Chrome-Verlaufsdatei suchen. Dies ist auf meinem System in

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

was sollte in einem allgemeineren übersetzen

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

Dort finden Sie eine "History" -Datei. Es ist eine SQLite3-Datei, und um sie zu manipulieren, muss Chrome geschlossen werden . Wenn Sie es vermasseln, löschen Sie die Verlaufsdatei und beginnen Sie von vorn - es ist, als hätten Sie den gesamten Chrome-Verlauf gelöscht.

Benennen Sie die Datei anschließend in History.sqlite3 um, und installieren Sie SQLiteMan (oder einen anderen SQLite3-Editor - in Windows, indem Sie auf die Datei möglicherweise doppelklicken, um einen Vorschlag auszulösen.) Öffnen Sie dann die Datei ( Hinweis: Einige Dienstprogramme benötigen das Umbenennen möglicherweise nicht. Versuchen Sie es möglicherweise ohne vorheriges Umbenennen, um Arbeit zu sparen.).

In der URLS-Tabelle finden Sie die von Ihnen besuchten URLs. Zum Beispiel kann ich die Abfrage ausführen:

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

um alle Vorkommen von 'meetup' im Host- oder Pfadnamen-Teil der von mir besuchten URLs anzuzeigen. Oder ich könnte nach pr0n suchen oder ... irgendetwas, solange ich mich an die SQL-Syntax halte .

Sie können auch die anderen Informationen verwenden, um die Abfrage auszuführen, z. B. den Zeitpunkt des letzten Besuchs. Denken Sie daran, dass Sie die Daten in Chrome-Zeit umrechnen müssen. Dies ist die Anzahl der Mikrosekunden, die seit 1. Januar, Jahr unseres Herrn 1601 vergangen sind. Wenn Sie in ein Unix-Feld date +%s eingeben, wird die Anzahl der Sekunden angezeigt. Mit einer Million multiplizieren, 11644473600 addieren und fertig.

Wählen Sie beispielsweise Besuche nach dem 1. Oktober 2013 aus:

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

Ersetzen Sie zum Löschen einfach SELECT * durch DELETE und drücken Sie F9, um die Abfrage auszuführen.

Sie können NOW() anstelle des aktuellen Datums und jedes andere SQLite-Syntax verwenden.

(Falls die Datei "Archivverlauf" den letzten von Chrome archivierten Verlauf enthält).

Wenn Sie fertig sind, benennen Sie die Datei bei Bedarf in "Verlauf" um.

Automatisierung: Ein-Klick-Desinfektion

Sie benötigen ein SQLite-Befehlszeilendienstprogramm wie sqlite3 oder sql3tool. Dann schreiben Sie ein Skript oder eine Batch-Datei und ändern den folgenden Code mit den entsprechenden Pfaden (Sie möchten den Verlauf von my nicht löschen, ohne ihn zu berühren, oder?):

# 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 ..."

Denken Sie nur daran, dass dadurch der Ihr Verlauf auf Ihr Instanz von Chrome gelöscht wird. Wenn Sie beispielsweise einen Proxy verwenden und dieser Proxy Protokolle führt, sind alle diese URLs in den Protokollen weiterhin verfügbar .

UPDATE: Wenn Sie ein nicht mehr funktionierendes SQL-Tool verwenden, für das die Datei eine explizite und bekannte Erweiterung haben muss, müssen Sie vor dem Starten des Vorgangs einen entsprechenden RENAME ausführen und einen anderen für Bringe die Dinge wieder in Ordnung, wenn du fertig bist:

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"

Sobald dies erledigt ist, doppelklicken Sie auf das Skriptsymbol und hey presto !, Ihr Chrome-Verlauf wird bereinigt . Es funktioniert auch mit Firefox. Die Zeitstempel könnten sich jedoch in einem anderen Zeitrahmen befinden (möglicherweise Unix). Überprüfen Sie daher das Wasser, bevor Sie hineinspringen.

Wie wäre es Cookies zu reinigen?

Möglicherweise möchten Sie das Gleiche mit Cookies anstelle von "Verlauf" tun.

Im Chrome-Datenverzeichnis sind jedoch andere Dateien als "Verlauf" aufgefallen. Eine davon heißt "Cookies"... :-)

Erweiterte Streckenabdeckung

Der obige SQL-Trick ist nicht auf Löschvorgänge beschränkt. Sie können Einträge mit dem Befehl UPDATE ändern. Nach dem Löschen von nicht benötigten Einträgen können Sie INSERT mit den entsprechenden Zeit- und Datumsmakros verwenden, damit Chrome davon ausgeht, dass Sie einige URLs besucht haben, die Sie nicht oder zu einem bestimmten Zeitpunkt nicht besucht haben.

Dies kann in solchen Fällen nützlich sein, wenn die Bereinigung einer Browsersitzung zu einem unwahrscheinlichen Bild führen würde, in dem jemand sehr lange auf ein leeres Browserfenster starrt, und eine Art inaktive Navigation vorzuziehen ist. Dies setzt natürlich voraus, dass niemand merkt, dass jeden Tag es gibt genau die gleiche Navigation "Vorlage" .

15
LSerni

Indem Sie die Umschalttaste gedrückt halten und auf das erste URL-Kontrollkästchen klicken und dann zum letzten scrollen. Dadurch wird Google angewiesen, alle dazwischen liegenden Beiträge auszuwählen. Sie drücken dann "Löschen" und der Voila-Verlauf ist für diese bestimmte URL verschwunden

3
Meron

Sie können entweder chrome: // history oder chrome: // history-frame besuchen. Auf der Seite können Sie mit der Suche beginnen. Wenn alle Ergebnisse aufgelistet sind, drücken Sie einfach CTRL + A, um alle sichtbaren Elemente auszuwählen. Durch erneutes Drücken werden alle Elemente abgewählt.

Mit den ausgewählten Elementen löschen Sie sie einfach über die Taste DEL.

2
Ralph Segi

Um die Anzeige von Fabricio PH zu erweitern, sollten alle Ergebnisseiten für eine bestimmte Suche auf der Seite chrome: // history-frame beim Einfügen in die devtools-Konsole gelöscht werden:

var clearHistoryPage, historyInterval;

historyInterval = null;

clearHistoryPage = function() {
  var i, input, inputs, len, spinner;

  // If spinner is visible a new page is still loading
  spinner = document.getElementById('loading-spinner');
  if (!spinner.hasAttribute('hidden')) {
    console.log("Waiting on load");
    return;
  }

  inputs = document.getElementsByTagName('input');
  // When no history is present 5 inputs are still present on the history frame page
  if (inputs.length <= 5) {
    console.log("Found 5 or less inputs, stopping");
    clearInterval(historyInterval);
    return;
  }

  console.log("FOUND " + inputs.length + " results, clearing");
  for (i = 0, len = inputs.length; i < len; i++) {
    input = inputs[i];
    if (input.type === 'checkbox') {
      input.checked = true;
    }
  }
  document.getElementById('remove-selected').disabled = false;
  document.getElementById('remove-selected').click();
  document.getElementById('alertOverlayOk').click();
};

historyInterval = window.setInterval(clearHistoryPage, 5000);
2
Thom

Wenn Sie von Google auf dieses Thema gestoßen sind, können Sie jetzt auf einfachere Weise mehrere Elemente löschen.

1
Gwendal

Suchen Sie in der Chrome-Leiste nach dem Verlaufselement, das Sie löschen möchten. Scrollen Sie in den Ergebnissen mit den Pfeiltasten nach unten (auch wenn es sich um das erste Element in der Liste handelt) und drücken Sie Umschalt + Entf.

1
Dejan Milosevic

Nein, das wird derzeit von Chrome selbst nicht unterstützt.

Erweiterungen können jedoch den Zugriff auf Ihre Verlaufsdaten anfordern. Es wäre also möglich, dass eine Erweiterung Ihre Anforderungen erfüllt. Ich kenne selbst keine solche Erweiterung, aber eine kleine Suche brachte mich dazu, diese zu finden:

https://chrome.google.com/webstore/detail/gjieilkfnnjoihjjonajndjldjoagffm

Möglicherweise kann diese Erweiterung das tun, was Sie verlangen.

1
Steven Roose

Verwenden Sie einfach Chrome mit der URL: chrome: // history/# e = 1 & p = 0

Möglicherweise müssen Sie es kopieren/in Ihre URL-Leiste einfügen.

1
Hugolpz

Beginnen Sie, den Begriff zu schreiben, nach dem Sie suchen möchten. Wenn der unerwünschte Begriff angezeigt wird, navigieren Sie mit dem Aufwärts- und Abwärtspfeil zu diesem Begriff und drücken Sie Umschalt + Entf.

0
// Tested on Chrome Version 72.0.3626.119 (Official Build) (64-bit)
// 1) Open Chrome browser history.
// 2) Search for specific history you want to delete.
// 3) Cut-and-paste the code below in the Chrome Browser console.
// Enjoy!

(function (){
let historyApp = document.getElementById("history-app");
historyApp.items[0].selectAllItems();

// Delete history with a popup confirmation Prompt
historyApp.deleteSelected();

// Delete with no Prompt
// historyApp.items[0].deleteSelected_()  

})();
0
Mark Code

Verwenden Sie Folgendes:

function hasText(a){
    if(a.innerText){
        return true}
    else{
        return false}
}

function isCheckbox(element){
    if(element.type=='checkbox'){
        return true
    }
}

function removeItemsofQuery(query){
    var element=document.getElementsByClassName('entry-box')
    var checkbox=[]
    var titles=[]
    for(i=0; i<element.length; i++){
        var children=element[i].children
        for(j=0; j<children.length; j++){
            if(hasText(element[i].children[j])==true && element[i].children[j].className!="time" ){
                var ds=element[i].children[j].innerText
                titles.Push(ds)
            }
            if (isCheckbox(element[i].children[j])==true){
                var hg=element[i].children[j]
                checkbox.Push(hg)
            }
        }
        }

    for(g=0; g<element.length; g++){
        var queries=titles[g].indexOf(query)
        if(queries>0){
            checkbox[g].checked=true
        }
    }
    var RS=document.getElementById('remove-selected')
    RS.disabled=false
    RS.click()
}

Lege es in die Chrome-Browserkonsole eines der historyFRAMEpage. Nicht die reguläre Geschichte, sondern die GeschichteFRAME. Rufen Sie dann die Funktion removeItemsofQuery auf und geben Sie als Argument den Begriff ein, nach dem Sie suchen und den Sie entfernen möchten. Drücken Sie die Eingabetaste und anschließend die Schaltfläche zum endgültigen Entfernen. Dann sind Sie fertig. Herzliche Glückwünsche.

0
Damphair

Wenn der Code von Fabricio bei Ihnen nicht funktioniert, habe ich festgestellt, dass dieser Code funktioniert, und zusätzlich auf die Schaltfläche "Ausgewählte entfernen" für mich geklickt, sodass ich nur auf den Bestätigungsdialog klicken muss.

document.querySelectorAll('.entry-box input[type="checkbox"]').forEach(function(input) {
  input.checked = true;
});

document.getElementById("remove-selected").disabled = false
document.getElementById("remove-selected").click()
0
Pavelloz

Verwenden Sie diese Erweiterung in Google Chrome: Verlaufskalender

Es ist genau das, wonach ich gesucht habe ... es bewirkt, dass der Verlauf gelöscht wird, genau wie Firefox, d. H. Schnell und reibungslos. Wenn Sie mehr als 2000 Verlaufsmarkierungen für Websites wie Amazon.com haben, dauert es eine Weile, bis der Google Chrome-Verlaufsviewer angezeigt wird (Seite für Seite). Im Firefox-Verlaufsfenster (oder mithilfe der oben genannten Chrome-Erweiterung) können Sie jedoch alle 2000 auswählen und löschen auf einmal

0
Jatin Grover
  • chrome:history öffnen und nach den zu löschenden Websites suchen.
  • Öffne deine Chrome-Konsole mit ctrl-shift-j.

  • stellen Sie gegebenenfalls sicher, dass in der Dropdown-Liste direkt über der Konsole history (history-frame) und nicht top, usw. steht.

  • führen Sie den folgenden Code in der Konsole aus:

$$('input[type=checkbox]').forEach(el => el.checked = true); $("remove-selected").disabled = false;

0
Sethicus
function sleep(ms) {
    return new Promise(resolve => setTimeout(resolve, ms));
}
async function selectAll() {
    var count = 0;
    var inputs = document.getElementById("history-app").shadowRoot.getElementById("history").shadowRoot.getElementById("infinite-list").children;

    for (var i = 1; i < inputs.length; ++i) {

        if (inputs[i].shadowRoot.getElementById("checkbox").getAttribute('aria-checked') == "false") {
            inputs[i].shadowRoot.getElementById("checkbox").click();
            count++;
            await sleep(20);
        }
    }
    if (c > 0) selectAll()
}
selectAll()
0
konstruktor
  1. Klicken Sie auf das erste Kontrollkästchen.
  2. Scrollen Sie zum Ende der Seite.
  3. Halten Sie die Umschalttaste gedrückt und klicken Sie auf das letzte Kontrollkästchen.
  4. Das Kontrollkästchen Alle wird aktiviert. Scrollen Sie nach oben, wo die Schaltfläche "Ausgewählte Elemente entfernen" vorhanden ist.
  5. Klicken Sie auf die Schaltfläche. Ausgewählte Elemente werden gelöscht :)
0
Nikhil Shukla