Archiv der Kategorie: Python

Browser: Verlauf/Historie als CSV Datei speichern

Wer einmal seinen Browserverlauf analysieren wollte wird feststellen, mit den Bordmitteln von Firefox und Chrome wird das schwierig und ist wenig übersichtlich.

Deshalb ein Python-Skript, um von Firefox oder Chrome den Verlauf, der in einer Sqlite-DB residiert, in eine CSV-Datei zu überführen, die dann bequem mit Excel ausgewertet werden kann.

https://github.com/medianetix/browser-history-to-csv/

Für beide Browser (unter LInux getestet) wird eine CSV-Datei mit folgenden Spalten angelegt:

  • id
  • url
  • domain
  • visit_count
  • last_visit_time / last_visit_date
    (Timestamp – Vorsicht: Chrome startet 1601-01-01 statt 1970-01-01)
  • last_access (ISO Datum)

Git: Python mit pycodestyle als pre-commit hook

Python Skripe können über das Pythonmodul pycodestyle vor dem Commit auf syntaktische Fehler geprüft werden.

Dazu muss pycodestyle (Nachfolger von pep8) installiert sein:
python -m pip install pycodestyle

Danach kann im .git-Verzeichnis der pre-commit hook angelegt werden:

.git/hooks/pre-commit:

#!/bin/sh
FILES=$(git diff --cached --name-only --diff-filter=ACMR)
python -m pycodestyle ${FILES}

Damit würde im Fall eines Fehlers der Commit NICHT durchgeführt werden.Der diff-filter-Parameter greift bei folgenden Typen:

Der diff-filter – Parameter greift bei folgenden Typen:

  • A=Added (hinzugefügt)
  • C=Copied (kopiert)
  • M=Modified (geändert)
  • R=Renamed (umbenannt)

Shell: Lokaler Webserver ohne Apache2/nginx mit Python, PHP oder node js

manchmal soll auf die Schnelle eine HTML- oder Javascript-Datei getestet werden, ohne das ein Webserver im System installiert ist (zB Apache2 oder nginx). Abhilfe können hier Python, PHP oder node js als installierte Skript-Sprachen bieten.

PHP (muss installiert sein):
In den Ordner wechseln, in dem die ausführbaren Datein liegen (zB index.php oder index.html). Hier wird der eingebaute Server (-S, grosses „s“) für Port 8000 aufgerufen.

php -S localhost:8000

Python (muss installiert sein, Annahme: Python3):
In den Ordner wechseln, ind em die ausführbaren Datein liegen (zB main.py oder index.html).

python -m http.server 8000 --bind 127.0.0.1

Python ruft hier das http.server Modul auf, verbindet es mit Port 8000 und bindet es an die lokale IP 127.0.0.1 (sonst wären auch Zugriffe mit anderen IP’s möglich)

node js (muss installiert sein):

npm install -g http-server
http-server

Npm ist der Paket-Amanager von node js und wird mit diesem installiert. Die Zeile „npm install ..“ muss natürlich nur beim ersten Mal aufgerufen werden, um das http-server Paket zu installieren. Danach wird in den ordenr mit den auszuführenden Dateien gewechselt und „http-server“ aufgerufen.