Samstag, 9. Januar 2016

MyFinds - die selbstgefundenen Caches durchsuchen und ein bisschen Statistik

Statistik hat ja für verschiedene Geocacher einen unterschiedlichen Stellenwert. Uns interessiert die Gesamtheit der nackten Geocaching-Statistik nicht so unbedingt, aber so ein paar Statistiken und besonders die von uns gefundenen Caches nach bestimmten Kriterien zu durchsuchen, interessiert uns manchmal dann doch. Dafür haben 25% von DerSchnelleLinus "MyFinds" programmiert. MyFinds ist in Python geschrieben und nutzt das Django Webframework.

So "richtig" neu ist MyFinds nicht, da es zwei ältere (ebenfalls selbst programmierte) Projekte vereint, nämlich pygcbrowse und pygcstats und außerdem die bereits vorhandenen Geocaching-Applikationen Cachekeeper und Mysterykeeper ergänzt.

Was MyFinds macht ist recht simpel: es liest die GPX-Datei des "Meine Funde" Pocket Queries ein und speichert die Daten zu den Caches in einer lokalen SQLite-Datenbank. Diese liefert dann die Daten für die Statistiken und die Suche. Das ganze wird über den Browser bedient, die Aufbereitung der Daten und die Ausgabe als HTML-Datei erfolgt über das bereits erwähnte Django Webframework, welches ebenfalls lokal einen Webserver bereit stellt.

Die Startseite des Applikation ist relativ unspektakulär, da hier einfach nur die drei Auswahlmöglichkeiten aufgelistet werden.

Startseite der MyFinds Applikation

Ein Klick auf den Link "Statistics" ruft die Statistik-Seite auf:

durch MyFinds generierte Statistiken

Wie zu sehen ist, werden sieben Statistiken aufgelistet - halt das, was uns mal so ab und an interessiert, nachzuschauen.

Etwas spannender ist da die Suche-Seite. Diese erlaubt es, die gefundenen Caches nach diversen Kriterien zu durchforsten:

Suchmaske
Wie zu sehen ist, stehen eine ganze Reihe von Suchmöglichkeiten zur Verfügung. Natürlich kann man auch mehrere Kriterien auswählen, die Suchbegriffe werden dann mittels "und" verknüpft. So würde z.B. "Cache Type: Traditional, Terrain = 4" nach allen Tradis mit einer T-Wertung  von 4 suchen.

Alle zur Verfügung stehenden Suchkriterien sind:
  • Suche nach Cache Owner
  • Such nach Cache Namen
  • Suche nach Cacheart
  • Auswahl nach Land
  • Auswahl nach Bundesland (bzw. Bundesstaat, Provinz etc.)
  • Auswahl nach Jahr des Fundes
  • Auswahl nach T-Wertung (inkl. T-Wertung "größer als" oder "kleiner als" oder "gleich")
  • Auswahl nach D-Wertung (inkl. D-Wertung "größer als" oder "kleiner als" oder "gleich")
  • Selektion nach Abstand von den Heimatkoordinaten
Das Ergebnis wird dann als Tabelle ausgegeben:

Ergebnis der Suche nach den Caches eines bestimmten Owners
Was wir ganz praktisch finden (und was deswegen auch eingebaut ist ;-) ), ist die Möglichkeit, sich die Position der Caches, welche im Suchergebnis aufgelistet sind, direkt auf einer OpenStreetMap Karte zeigen zu lassen. Diese wird direkt unterhalb der Tabelle automatisch angezeigt:

Ort der Caches aus dem Suchergebnis

Natürlich skaliert die Karte beliebig, d.h. es sind nicht nur "lokale" Karten (wie oben im Bildschirmfoto zu sehen), möglich. Das folgende Bildschirmfoto zeigt z.B. eine Karte mit unseren Funden 2015:

Karte
Klickt man in der Ergebnistabelle auf die GC-Nummer eines Caches, so werden dessen Details angezeigt:

Details zu einem gefundenen Cache
Wie gesagt ist MyFinds selbst geschrieben und damit nach unseren Wünschen gestaltet (das ist halt der Vorteil von selbst erstellter Software :-) ).
Wer Interesse an MyFinds hat, kann uns gerne kontaktieren. Auf dem eigenen Rechner wird lediglich Python 3.4 oder neuer und Django benötigt.

Kommentare:

  1. Werden auch die Notizen zum Cache angezeigt/ausgegeben?

    AntwortenLöschen
    Antworten
    1. Nein. Grund: die Notizen sind leider nicht in der GPX-Datei des Pocket Queries enthalten.

      Löschen
  2. Ich bin Nutzer des GSAK-Makros FindStatGen, wie wahrscheinlich viele andere Geocacher auch.

    Die Anzeige der gefundenen Geocaches auf einer Weltkarte mit Markern finde ich jedoch sehr schick. Gefällt mir!

    Viele Grüße aus dem Saarland,
    Jörg

    AntwortenLöschen
    Antworten
    1. Danke :-) Wobei das echt kein Hexenmeister ist. Wenn man aus GSAK Lat, Lon und Cachename als CSV Datei exportieren kann, dann bedarf es zum Erstellen der Karte nur noch ein paar Zeilen Code.

      Löschen