Vielleicht wollten Sie schon einmal genau wissen, wann und wie oft Sie eine bestimmte Website besucht haben. Ob zur Dokumentation Ihrer Arbeitszeiten, zur Nachverfolgung einer Recherche oder einfach um Ihre Online-Gewohnheiten besser zu verstehen – es gibt viele Gründe, detailliertere Informationen zu Ihren Webaktivitäten abzufragen und zu filtern.

Glücklicherweise speichert Firefox mehr Informationen, als in der Chronik angezeigt werden – nämlich in einer SQLite-Datenbank-Datei namens places.sqlite.
Mit einem beliebigen Datenbank-Client, welcher Zugriff auf SQLite-Datenbanken unterstützt, lässt sich auf diese Informationen zugreifen. Da ich die Entwicklungsumgebung IntelliJ täglich verwende, nutze ich persönlich den IntelliJ Database Explorer. Hier müssen Sie lediglich eine neue SQLite Data Source hinzufügen und den Pfad zur places.sqlite eingeben. Bei Windows liegt diese unter C:\Users\<Benutzername>\AppData\Roaming\Mozilla\Firefox\Profiles\<Profilordner>\places.sqlite
z.B. C:/Users/mfischer/AppData/Roaming/Mozilla/Firefox/Profiles/8absuz37.default-release/places.sqlite.
Im SQL-Konsolenfenster können Sie nun anhand eines Joins über die Tabellen moz_places und moz_historyvisits beliebige Abfragen ausführen.
Mittels folgendem SQL-Befehl ermitteln Sie zum Beispiel alle Chronik-Einträge des aktuellen Tages:
SELECT
datetime(v.visit_date / 1000000, 'unixepoch', 'localtime') AS visit_date,
p.title,
p.url
FROM
moz_places p
JOIN moz_historyvisits v ON p.id = v.place_id
WHERE date(datetime(v.visit_date / 1000000, 'unixepoch', 'localtime')) = date('now', 'localtime')
ORDER BY visit_date DESC;
Beispiel-Ausgabe:
| visit_date | title | url |
|---|---|---|
| 2024-08-26 15:58:12 | Was kommt nach Scrum? Ein Ausblick auf die Zukunft agiler Methoden – Business -Software- und IT-Blog – Wir gestalten digitale Wertschöpfung | https://staging.blog.doubleslash.de/software-technologien/it-projektmanagement/was-kommt-nach-scrum-ein-ausblick-auf-die-zukunft-agiler-methoden |
| 2024-08-26 15:50:50 | Secure Password Share von doubleSlash | https://www.secure-password-share.de/ |
| 2024-08-26 15:50:43 | doubleSlash Net-Business GmbH | https://www.doubleslash.de/ |
| 2024-08-26 15:50:38 | doubleSlash IT Business und Software Blog | https://staging.blog.doubleslash.de/ |
| 2024-08-26 15:50:29 | Was kommt nach Scrum? Ein Ausblick auf die Zukunft agiler Methoden – Business -Software- und IT-Blog – Wir gestalten digitale Wertschöpfung | https://staging.blog.doubleslash.de/software-technologien/it-projektmanagement/was-kommt-nach-scrum-ein-ausblick-auf-die-zukunft-agiler-methoden |
| 2024-08-26 15:50:19 | doubleSlash IT Business und Software Blog | https://staging.blog.doubleslash.de |
| 2024-08-26 15:50:19 | http://staging.blog.doubleslash.de/ | |
| 2024-08-26 15:50:03 | test – Google Suche | https://www.google.com/search?client=firefox-b-d&q=test |
Falls Sie stattdessen die ganze Historie mittels AND– oder OR-Abfragen über URL und Titel filtern möchten, lässt sich dies zum Beispiel wie folgt bewerkstelligen:
SELECT
datetime(v.visit_date / 1000000, 'unixepoch', 'localtime') AS visit_date,
p.title,
p.url
FROM
moz_places p
JOIN moz_historyvisits v ON p.id = v.place_id
WHERE (
p.url LIKE '%blog%'
AND p.url LIKE '%doubl%'
AND lower(p.title) LIKE '%scrum%'
) OR (
lower(p.title) LIKE '%agile%'
AND p.url NOT LIKE '%jira%'
)
ORDER BY visit_date DESC;
Nachtrag
Wenn Sie zusätzlich eine Spalte ergänzen wollen, welche nur die Domain enthält, können Sie die obigen Statements einfach wie folgt anpassen:
SELECT
...
substr(
p.url,
instr(p.url, '//') + 2,
instr(substr(p.url, instr(p.url, '//') + 2), '/') - 1
) AS domain
FROM
...
Fazit
Firefox speichert wesentlich mehr Informationen über die eigenen Webaktivitäten, als die Chronik auf den ersten Blick zeigt. Mit einem Datenbank-Client lassen sich diese Daten relative einfach detailliert abfragen.
Titelbild generiert mithilfe von ChatGPT.



