OCDL
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.
Systemvoraussetzungen
OCDL ist ein plattformübergreifendes Python-Skript und sollte auf allen Systemen lauffähig sein, auf denen eine aktuelle Python-Version installiert ist. Typische Unixe bringen Python bereits mit; unter Windows ist meist eine manuelle Installation von Python notwendig (z.B. ActivePython).
Allgemein
OCDL ist ein Kommandozeilenprogramm und wird daher innerhalb der Kommandozeile (Linux/Unix: Terminalfenster, Windows: Eingabeaufforderung) verwendet. Wie für Kommandozeilenprogramme üblich, verfügt OCDL über eine integrierte Hilfsfunktion, die über den Kommandozeilenparameter --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 -s, --setup create the necessary directories; ask the user for login credentials -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). | | | | You can use the command line option '--setup' to create the configuration | | directory and to initialize the config file with your login credentials. | | | | Alternatively, you can manually create the configuration directory and | | the config file: | | 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
OCDL hat eine Setup-Funktion, die die notwendigen Verzeichnisse anlegt und den Nutzer nach seinen Zugangsdaten für Opencaching.de fragt. Dazu ruft man OCDL mit dem Parameter --setup auf und gibt seine Zugangsdaten ein:
user@host:~/GPX> ./ocdl.py --setup Performing setup. Enter your username for OC.de: XXX Enter your password for OC.de: YYY Setup done. You may re-run 'ocdl.py' in normal mode.
Danach ist OCDL fertig konfiguriert und kann normal verwendet werden. Falls sich die Zugangsdaten ändern sollten, kann die Setup-Funktion jederzeit wieder aufgerufen werden.
Verfügbare gespeicherte Suchen auslesen
Mit dem Kommandozeilenparameter --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 --dir festgelegt wurde.
Die Benennung der Dateien kann über den Parameter --name beeinflusst werden:
- --name ID erzeugt Dateien nach dem Schema ID.zip, im Beispiel: 42325999.zip
- --name 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
- --name 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
- --name NAME+DATE erzeugt Dateien nach dem Schema Name_Datum.zip; im Beispiel: OC-only_Deutschland_2012-10-26.zip