BayPack
Projekt
Es gibt PayBack™-Karten, die nur Punkte™-sammeln zulassen, jedoch kein abheben erlauben.
Eine solche wurde für den Hackerspace vor Ort© organisiert, kopiert, und in Umlauf gebracht.
Auf der Webseite gut versteckt lassen sich die Punkte™ gegen Geld™ eintauschen.
Der Gewinn daraus geht auf das Spendenkonto des Hackerspaces.
Ziel
Ermitteln wie wertvoll Daten sein können.
Bereitstellen der Daten in lesbaren, verarbeitbaren Formaten.
Leute dazu anregen, Statistiken & Grafiken daraus zu erstellen.
Werkzeuge
BeautifulSoup sowie requests zum verarbeiten der Quelle.
SQLAlchemy für ein SQlite-File.
Mit Jinja2 wird das html generiert.
Werkzeug ist für den feed zuständig.
Features
Alles ist eine Klasse:
  • Module sind untereinander abhängig
    ☞︎ benötigen Instanzen anderer Klassen um erzeugt zu werden.
    Sogar der Logger ist eine Klasse
  • Die meisten Objekte haben eine __call__() Methode.
Modul unabhängige Konfiguration: crawler storage output
Implementierung des Crawlers als Iterator.
Nahtloses wiederaufnehmen alter Buchungen unter Vermeidung von Duplikaten.
Abbruch des Crawlers, nach sieben (konfigurierbar) Tagen ohne neue Daten.
Minimale Datenhaltung — Jedes Datum, Punkte™stand, Sammelstelle® und jede Aktion© existiert nur einmal.
☞︎ Die eigentlichen Buchungen sind immer nur Referenzen darauf.
Links
Repository
baypack.git
Output
Siehe ☞︎ sample_2016_02 ☜︎
Die Ausgabe ist limitiert auf 42 (konfigurierbar) Elemente.
Die Software kann zusätzlich noch _full erzeugen, die alle bis dato bekannten Daten enthalten:
baypack sample_2016_02
Zum sortieren auf die Überschriften der Tabelle klicken.
Daten vom Datensammler sammeln
Erstellt
25.04.2016 - 13:30:00
Tags
CCC
Projekt
Python