OCDL

Aus Opencaching-Wiki
Zur Navigation springen Zur Suche springen

OCDL (Opencaching Downloader) ist ein Python-Skript zum komfortablen Download von gespeicherten Suchen als GPX-Dateien. OCDL ist besonders dann nützlich, wenn man regelmäßig gespeicherte Suchen herunterladen möchte, beispielsweise um die Cache-Datenbank von OpenCacheManager auf einem aktuellen Stand zu halten.

OCDL unter Linux

Um OCDL nutzen zu können, muss natürlich eine aktuelle Version von Python auf dem System vorhanden sein; typische Linux-Distributionen bringen Python bereits mit.

Allgemein

Wie für Kommandozeilenprogramme üblich, verfügt OCDL über eine integrierte Hilfsfunktion, die über den Kommandozeilenparameter -h bzw. --help aufgerufen werden kann:

user@host:~/GPX> ./ocdl.py --help
Usage: ocdl.py [options] [ID...]

Options:
  --version             show program's version number and exit
  -h, --help            show this help message and exit
  -c CONFIGDIR, --configdir=CONFIGDIR
                        specify directory for config files (cookies, login
                        information); default is '~/.ocdl'
  -l, --list            list available queries, do not download them
  -n STYLE, --name=STYLE
                        select naming style of downloaded queries, STYLE={ ID,
                        ID+DATE, NAME, NAME+DATE }, default is 'ID'
  -d TARETDIR, --dir=TARETDIR
                        select target directory for downloaded queries;
                        default is the current directory
  -v, --verbose         print verbose status messages

 ocdl.py logs in to opencaching.de using login credentials which are stored |
| in '~/.ocdl/config.txt' (the actual directory is configurable using the   |
| '--configdir' command line option).                                       |
| Make sure the directory '~/.ocdl/' (or whatever you chose by              |
| '--configdir') exists and contains the file 'config.txt' with the         |
| following two lines:                                                      |
|                                                                           |
| OCDE_LOGIN='username'                                                     |
| OCDE_PASSWORD='password'                                                  |
|                                                                           |
| where username and password are your login credentials for opencaching.de |
|                                                                           |
| Moreover, ocdl.py stores the login cookie 'cookies.txt' in the selected   |
| config directory for future logins.                                       |


Konfiguration

Als erstes müssen die Login-Daten zu Opencaching.de in der Datei config.txt im Verzeichnis ~/.ocdl/ abgelegt werden. Dabei wird folgendes Format erwartet:

OCDE_LOGIN='username'
OCDE_PASSWORD='password'

Verfügbare gespeicherte Suchen auslesen

Mit dem Kommandozeilenparameter -l bzw. --list wird die Liste der online verfügbaren, gespeicherten Suchen abgefragt und ausgegeben:

user@host:~/GPX> ./ocdl.py --list
11339629/'Tradis in Berlin'
42325999/'OC-only Deutschland'

In obigem Beispiel sind zwei Suchen verfügbar, nämlich "Tradis Berlin" mit der ID "11339629" und "OC-only Deutschland" mit der ID "42325999". Die ID-Werte sind wichtig für den Download der Suchen.

Download der Suchen

Hat man festgestellt, welche Suchen überhaupt verfügbar sind, kann man diese auch herunterladen. Dazu gibt man die entsprechende ID als Parameter an OCDL.

Mit folgendem Aufruf läd man die Suche "OC-only Deutschland" als ZIP-komprimierte GPX-Datei herunter:

user@host:~/GPX> ./ocdl.py 42325999

Die heruntergeladene Datei wird dann 42325999.zip genannt und im aktuellen Verzeichnis abgelegt bzw. in dem Verzeichnis, dass über den Parameter -d bzw. --dir festgelegt wurde.

Die Benennung der Dateien kann über den Parameter -n bzw. --name beeinflusst werden:

  • -n ID erzeugt Dateien nach dem Schema ID.zip, im Beispiel: 42325999.zip
  • -n ID+DATE erzeugt Dateien nach dem Schema ID_Datum.zip, hängt also das aktuelle Datum an die ID an; im Beispiel: 42325999_2012-10-26.zip
  • -n NAME erzeugt Dateien nach dem Schema Name.zip, wobei Name der Name der gespeicherten Suche ist; Leerzeichen im Name werden dabei durch Unterstriche ersetzt; im Beispiel: OC-only_Deutschland.zip
  • -n NAME+DATE erzeugt Dateien nach dem Schema Name_Datum.zip; im Beispiel: OC-only_Deutschland_2012-10-26.zip


OCDL unter Windows

Unter Windows muss zunächst Python installiert werden, da es nicht zum Lieferumfang gehört. Hier bietet sich z.B. [1] an. Im Folgenden wird davon ausgegangen, dass Python ins Verzeichnis C:\Python27 installiert wurde.

Als erster Schritt muss die Datei ocdl.py an die installierte Python-Version angepasst werden. Dazu öffnet man die Datei mit einem Texteditor und ersetzt die erste Zeile durch

#!C:\Python27\python.exe

Als nächstes wird die Konfigurationsdatei in User-Verzeichnis angelegt. Dazu zuerst ein Verzeichnis .ocdl im User-Verzeichnis (z.B. C:\Benutzer\Flopp\ bzw. C:\User\Flopp\) erstellen. In diesem Verzeichnis dann die Datei config.txt mit dem Inhalt

OCDE_LOGIN='username'
OCDE_PASSWORD='password'

anlegen, wobei username und password durch die Zugangsdaten von Opencaching.de zu ersetzen sind.

Jetzt sollte ocdl.py wie im Abschnitt OCDL unter Linux benutzbar sein.

Weblinks