Comment puis-je supprimer tout l'historique Web correspondant à une requête spécifique dans Google Chrome?


77

Dans Google Chrome, est-il possible de supprimer tout l'historique de recherche correspondant à une requête spécifique (par exemple, en.wikipedia.org)?


Il est possible de sélectionner tous les éléments d'une recherche à partir de l'historique Web Google. Je me demande s'il est possible de synchroniser l'historique Web Google avec l'historique Web de Chrome.
Anderson Green

Il existe une extension appelée "Updater for Google Web History" - il semble que cette extension permette à Google Web History de fonctionner dans Google Chrome.
Anderson Green

3
@AndersonGreen Pourriez-vous s'il vous plaît mettre à jour la réponse acceptée à superuser.com/a/791728/84229 de Fabricio PH. C'est la réponse correcte d'origine. Celui qui était actuellement accepté avait simplement copié la bonne réponse sans attribuer de crédit. Maintenant, il a été rétabli dans sa version d'origine.
Utilisateur

3
@AndersonGreen Vous devriez choisir Pooya comme la bonne réponse, c’est le moyen le plus simple et le plus rapide de le faire. De plus, Fabricio fait sa propre publicité sur sa réponse, qui n'est pas complète.
LasagnaAndroid

Pour le rendre rapide: recherche, puis cliquez sur « ctrl + a » pour sélectionner tous les résultats
WUPPI

Réponses:


60

Mise à jour janvier 2019

Maintenant, Chrome prend en charge le raccourci clavier CtrlAouA


Réponse originale

Vous pouvez utiliser le raccourci du hacker pour injecter du code JavaScript .

Étape 1 Étant donné que l'historique Chrome est interrogé dans une iFrame, nous devons consulter: chrome: // history-frame / (copier et coller l'URL).

Étape 2 Effectuez la requête de recherche.

Étape 3 Ouvrez la console Chrome ( F12ou CtrlShiftiou i) et exécutez:

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

Étape 4 Appuyez sur le bouton ' Supprimer les éléments sélectionnés '.

En réalité, cela supprime les éléments de la page en cours. Je vais peut-être essayer de l'étendre, mais c'est un bon point de départ. Lire l' article complet dans mon blog.


3
Cela ne fonctionne plus. document.getElementsByTagName ('input') renvoie un tableau vide.
dinesh ygv

2
@FabricioPH J'ai exécuté le script en chrome: // history au lieu de "chrome: // history-frame, c'est pourquoi il n'a pas fonctionné pour moi. Cela fonctionne bien à l'intérieur du cadre.
dinesh ygv

2
C'est bien! Au début, je l'ai exécuté dans un onglet différent, ce qui ne fonctionnait pas (avec le recul, pour des raisons logiquement réalisables). J'ai donc rouvert la console dans le même onglet que chrome: // history-frame, et tout a fonctionné.
Jameson

1
solution très propre et facile
danboh

1
Cette solution est obsolète: appuyez simplement sur "ctrl + a"
vendredi

126

C'est simple et facile.

Recherchez ce que vous souhaitez supprimer. Sélectionnez le premier. Maintenant, faites défiler jusqu'au dernier résultat. Appuyez sur shiftet choisissez le dernier. Maintenant, toutes les correspondances sont sélectionnées et vous pouvez les supprimer ensemble.


Dans certains cas, la suppression d'une adresse des résultats de l'historique ne suffit pas pour empêcher cette adresse d'apparaître dans les suggestions automatiques de la barre d'URL.

Dans ce cas, visitez ici: https://superuser.com/a/273280/121184


1
Pour plus d'informations, cliquez ici: superuser.com/a/747816/85129
Anderson Green

2
Ou vous pouvez prendre un raccourci de hacker, voir ma réponse ci-dessous;)
Fabricio PH

5
@AndersonGreen C'est la bonne réponse, pas celle de Fabricio.
LasagnaAndroid

Celui-ci n'est pas évident. Je m'attends à ce que le texte soit sélectionné.
dinesh ygv

1
une des réponses plus bas couvre cela aussi (découvert après avoir placé mon commentaire)
wuppi

15

Pour les valeurs littérales de "requête" ...

Vous pouvez même interroger votre historique Chrome à l'aide de SQL. ( Firefox aussi: voir ci-dessous. Bien sûr, le chemin du fichier approprié devra être changé ).

Tout d’abord, vous devez localiser le fichier d’historique Chrome. Ceci est, sur mon système, dans

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

qui devrait se traduire de manière plus générale

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

Vous y trouverez un fichier "Historique". Il s’agit d’un fichier SQLite3. Pour le manipuler, Chrome doit être fermé . Si vous en faites un gâchis, supprimez le fichier d'historique et recommencez. C'est comme si vous aviez effacé tout l'historique de Chrome.

Ensuite, renommez le fichier History.sqlite3et installer sqliteman (ou tout autre éditeur SQLite3 - sous Windows, double-cliquant sur le fichier pourrait être suffisant pour déclencher une suggestion), puis ouvrez le fichier ( nb quelques utilitaires pourraient ne pas avoir besoin de la chose renommant Peut - être. essayez sans renommer d’abord, pour sauvegarder le travail ).

Dans le tableau des URL, vous trouverez les URL que vous avez visitées. Par exemple, je peux lancer la requête:

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

pour afficher toutes les occurrences de 'meetup' dans la partie hôte ou nom de chemin des URL visitées. Ou je pourrais rechercher pr0n , ou ... n'importe quoi, du moment que je respecte la syntaxe SQL .

Vous pouvez même utiliser les autres informations pour exécuter la requête, par exemple l'heure de la dernière visite. Rappelez-vous seulement que vous devez convertir les dates en heure Chrome , c'est-à-dire le nombre de microsecondes écoulées à partir du 1er janvier de l'année 1601 de notre Seigneur . Sur une boîte Unix, taper date +%svous indiquera le nombre de secondes; multipliez par un million, ajoutez 11644473600 et vous avez terminé.

Par exemple, sélectionnez les visites après le 1er octobre 2013:

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

Pour supprimer, remplacez simplement SELECT *par DELETEet appuyez sur F9 pour exécuter la requête.

Vous pouvez utiliser à la NOW()place de la date actuelle et toute autre syntaxe SQLite .

(Dans le cas contraire, le fichier "Archive History" contient le dernier historique archivé par Chrome).

Lorsque vous avez terminé, renommez le fichier si nécessaire en "Historique".

Automatisation: nettoyage en un clic

Vous avez besoin d'un utilitaire SQLite en ligne de commande tel que sqlite3ou sql3tool. Ensuite, vous écrivez un script ou un fichier de commandes, en modifiant le code ci-dessous avec les chemins appropriés (vous ne voulez pas effacer mon historique en laissant le vôtre intact, n'est-ce pas ?):

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

Rappelez-vous seulement que cela efface votre historique sur votre instance de Chrome. Si, par exemple, vous utilisez un proxy et que ce dernier conserve les journaux, toutes ces URL seront toujours disponibles dans les journaux .

MISE À JOUR : De même, si vous utilisez un outil SQL mortel qui exige que le fichier ait une extension explicite et connue, vous devrez effectuer un RENAME approprié avant de commencer les opérations, et un autre pour remettre les choses en ordre lorsque vous ' J'ai fini:

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"

Quoi qu'il en soit, une fois que cela est fait, double - cliquez sur l'icône du script et hop, votre historique Chrome est épuré . Cela fonctionne aussi avec Firefox; ses horodatages peuvent se trouver dans un autre cadre de référence temporel (éventuellement Unix pur), vérifiez donc l’eau avant de vous lancer dedans.

Que diriez-vous de nettoyer les cookies?

Vous voudrez peut-être faire la même chose avec les cookies au lieu de l’Historique.

Mais vous aurez remarqué, dans le répertoire de données de Chrome, d'autres fichiers que l'historique, dont l' un s'appelle Cookies ... :-)

Piste avancée couvrant

L'astuce SQL ci-dessus ne se limite pas aux suppressions. Vous pouvez modifier les entrées avec la UPDATEcommande. et après avoir supprimé les entrées inutiles , vous pouvez utiliser INSERTles macros de date et heure appropriées pour que Chrome estime que vous avez visité des URL que vous n'avez pas visitées ou pas.

Cela peut s'avérer utile dans les cas où le nettoyage d'une session de navigateur donnerait une image improbable de quelqu'un regardant fixement une fenêtre de navigateur vide pendant très longtemps, et une sorte de navigation inactive est préférable. Bien entendu, cela suppose que personne ne remarque que chaque jour, il existe exactement le même "modèle" de navigation .


La commande serait « SUPPR d'URL ... »
Anwar

3

En maintenant la touche Maj enfoncée, en cliquant sur la case à cocher de la première URL, puis en défilant jusqu'au dernier. Cela indique à Google de sélectionner tous les articles entre les deux. Vous appuyez ensuite sur "supprimer" et l'historique Voila est parti pour cette URL spécifique


Bienvenue sur le SuperUser Meron. Bien que cela puisse être valable, cela duplique les informations postées dans au moins deux autres réponses.
Bertieb

2

Pour ajouter à l’affiche de Fabricio PH, toutes les pages de résultats d’une recherche donnée doivent être effacées de la page chrome: // history-frame lorsqu’elles sont collées dans la console devtools:

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

Vous pouvez visiter chrome: // history ou chrome: // history-frame. Sur la page, vous pouvez commencer à chercher et lorsque tous les résultats sont listés, CTRL + Acliquez simplement sur tous les éléments visibles. Une nouvelle pression sur cette touche désélectionne tous les éléments.

Avec les éléments sélectionnés, supprimez-les simplement via la DELtouche.


1

Non, cela n'est actuellement pas pris en charge par Chrome lui-même.

Toutefois, les extensions peuvent demander l’accès à vos données d’historique. Il serait donc possible qu'une extension réponde à vos besoins. Je ne connais pas moi-même une telle extension, mais une petite recherche m'a fait trouver celle-ci:

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

Peut-être que cette extension peut faire ce que vous demandez.


2
Cette réponse est obsolète - voir celle-ci ou celle-ci
Garrulinae

Je ne peux pas le supprimer non plus, désolé
Steven Roose,

C'est bon - je le signale simplement aux futurs téléspectateurs.
Garrulinae

Ce qui est triste, c'est que je perds le représentant pour cela: p
Steven Roose

Pas de rallonge nécessaire, vérifiez ma réponse :)
Fabricio PH

1

Il suffit d’utiliser Chrome avec l’url: chrome: // history / # e = 1 & p = 0

Vous devrez peut-être copier / coller dans votre barre d'URL.


1

Dans la barre de Chrome, essayez de rechercher l'élément de l'historique que vous souhaitez supprimer. Une fois qu’il apparaît dans les résultats, faites-le défiler à l’aide des touches fléchées (même s’il s’agit du premier élément de la liste) et appuyez sur Maj + Suppr.


1

Si vous rencontrez ce sujet sur Google, il existe un moyen plus simple de supprimer plusieurs éléments maintenant.


cette méthode ne fonctionne pas
Woeitg

1

Tapez l'URL que vous souhaitez supprimer dans l'onglet Historique comme dans la capture d'écran ci-dessous, basculez la console du développeur (mac: opt + cms + i) et sélectionnez l' <iron-listélément. Puis basculez la console js (echap) et tapez le code suivant dans la console:

$0.querySelectorAll('history-item').forEach(_ => _.root.querySelectorAll('cr-checkbox').forEach(_ => _.click()))

Il devrait sélectionner tous les éléments visibles. Cliquez sur supprimer et répétez jusqu'à ce que la liste soit vide ou que chrome donne une erreur étrange.

onglet historique


1

Vous pouvez ouvrir le menu Chrome - puis passer à l'historique - si vous devez supprimer toutes les visites sur le site en question afin de placer le nom du domaine dans le champ requis ou d'appuyer sur trois points à droite du domaine requis si vous avez trouvé manuellement et choisissez toutes les entrées liées à ce domaine - appuyez sur nettoyer l'historique. Vous pouvez peut-être trouver plus d'informations pertinentes pour votre question ici rocketfiles.com


0

Utilisez cette extension dans Google Chrome: Historique

C’est exactement ce que je cherchais ... cela rend l’historique, la suppression, etc. exactement comme Firefox, c’est-à-dire rapide et fluide. Si vous avez plus de 2000 repères d’historique pour des sites tels que amazon.com, la visionneuse de l’historique Google Chrome prendra des siècles (aller page par page), mais dans la fenêtre de l’historique Firefox (ou en utilisant l’extension chrome mentionnée ci-dessus), vous pouvez sélectionner tous les 2000 et les supprimer. en une fois


Il montre 404 sur ce lien
Anwar

0
  • ouvrez chrome:historyet recherchez le (s) site (s) que vous souhaitez supprimer.
  • ouvrez votre console chrome avec ctrl-shift-j.

  • le cas échéant, assurez-vous que la liste déroulante juste au-dessus de la console est lue history (history-frame)et non pas top,etc.

  • exécutez le code suivant dans la console:

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


0

Si le code de Fabricio ne fonctionne pas pour vous, j'ai constaté que ce code fonctionnait et que je cliquais sur le bouton "Supprimer la sélection" pour moi. La seule chose à faire est de cliquer sur le dialogue de confirmation.

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
  1. Cliquez sur la première case à cocher.
  2. Faites défiler vers le bas de la page.
  3. Maintenez la touche Maj enfoncée et cliquez sur la dernière case à cocher.
  4. Toutes les cases à cocher seront sélectionnées; Faites défiler vers le haut, où le bouton "Supprimer les éléments sélectionnés" est présent.
  5. Cliquez sur le bouton. Les éléments sélectionnés seront supprimés :)

Bienvenue sur super utilisateur. Je suggérerais que des questions comme celles-ci ne sont pas les meilleures pour répondre! D'autres réponses ont déjà les options sur la façon de faire cela, y compris votre méthode.
Lister

0

Utilisez le suivant:

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()
}

Placez-le dans la console de navigateur Chrome sur la page d' historique FRAME . Pas l'histoire régulière, mais l'histoire FRAME . Ensuite, appelez la fonction removeItemsofQueryet entrez le terme que vous souhaitez rechercher et supprimer comme argument. Appuyez sur Entrée, puis sur le bouton Supprimer final. Ensuite, vous avez terminé. Toutes nos félicitations.


0

Commencez à écrire le terme que vous souhaitez rechercher. Lorsque le terme indésirable apparaît, utilisez les flèches vers le haut et vers le bas pour aller à ce terme, puis appuyez sur Maj + Suppr.


0
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()

1
Veuillez expliquer (en mots anglais ) comment cela répond à la question.
G-Man dit 'Réintégrez Monica' le

Allez sur chrome: // historique, cherchez ce que vous voulez, ouvrez la console Chrome, copiez et collez le code ci-dessus pour tout sélectionner
konstruktor

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_()  

})();
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.