• Willkommen im Geoclub - dem größten deutschsprachigen Geocaching-Forum. Registriere dich kostenlos, um alle Inhalte zu sehen und neue Beiträge zu erstellen.

Datenbankformat

Schnueffler

Geoguru
Kann mir jemand sagen, in welchem Format die Datenbank von GSAK vorliegt? Mit welchem Programm kann ich die Datenbank öffnen? Wie kann ich über die SQLite-Schnittstelle auf die Datenbank zugreifen? Wo finde ich dort die Information, unter welchen lokalen Namen das Bild eines Caches abgespeichert wurde?
 

Carsten

Geowizard
Wenn ich die Doku richtig verstanden habe, musst du erst einen Snapshot von der Datenbank als Textdatei? speichern, auf die du dann mit der SQLite-Engine zugreifen kannst. Ein direkter Zugriff auf die GSAK-DB mit SQLite ist meines Wissens nach nicht möglich. Mit diesem Zwischenexport war mir das bisher ehrlich gesagt zu umständlich, um es auszuprobieren.
 

hendyp

Geocacher
Soweit ich weiß handelt es sich um ein dBase-Derivat, das unter Borland Delphi benutzt wird.

Da GSAK unter Linux bei mir nicht ganz so sauber läuft, habe ich schonmal versucht, die Datenbank anderweitig einzulesen; bin aber bei der Suche nach einem funktionierenden und kostenfreien Tool nicht erfolgreich gewesen.

In der Datei $GSAK/data/GrabbedImages/files.txt findest Du Einträge der Form:
Code:
http://img.geocaching.com/cache/ba0977e4-2708-46b8-86c4-138733395971.jpg~~~190120081807241.jpg
Vielleicht hilft Dir das ja schon weiter.

Gruß,
hendyp
 
OP
Schnueffler

Schnueffler

Geoguru
Carsten schrieb:
Wenn ich die Doku richtig verstanden habe, musst du erst einen Snapshot von der Datenbank als Textdatei? speichern, auf die du dann mit der SQLite-Engine zugreifen kannst. Ein direkter Zugriff auf die GSAK-DB mit SQLite ist meines Wissens nach nicht möglich. Mit diesem Zwischenexport war mir das bisher ehrlich gesagt zu umständlich, um es auszuprobieren.
In Makros kann ich ja auch direkt SQLite-Befehle auf die Datenbank loslassen. Das wird ja schon in diversen Makros gemacht. Also muss es auch ohne Snapshot gehen.
 
OP
Schnueffler

Schnueffler

Geoguru
hendyp schrieb:
In der Datei $GSAK/data/GrabbedImages/files.txt findest Du Einträge der Form:
Code:
http://img.geocaching.com/cache/ba0977e4-2708-46b8-86c4-138733395971.jpg~~~190120081807241.jpg
Vielleicht hilft Dir das ja schon weiter.
Noch nicht ganz. Ich möchte ein Makro schreiben, mit welchem ich in die lokalen Bilder den Cachenamen (oder zumindest den WP) reinschreiben kann, so dass ich auf dem Oregon immer die Spoilerbilder dabei habe. Nun muss ich aber noch irgendwoher die Zuordnung von Cachename zum lokalen Bild herbekommen. Und das muss ja irgendwo in der Datenbank stehen. Aber wie lese ich die am Besten ein.
 

Carsten

Geowizard
Schnueffler schrieb:
In Makros kann ich ja auch direkt SQLite-Befehle auf die Datenbank loslassen. Das wird ja schon in diversen Makros gemacht. Also muss es auch ohne Snapshot gehen.

Hättest du mal ein Beispiel für so ein Makro? Ich finde in der Makro-Hilfe nur Beispiele, die vorher ein DBtoSQL() machen.
 

hendyp

Geocacher
Schnueffler schrieb:
Ich möchte ein Makro schreiben, mit welchem ich in die lokalen Bilder den Cachenamen (oder zumindest den WP) reinschreiben kann, so dass ich auf dem Oregon immer die Spoilerbilder dabei habe. Nun muss ich aber noch irgendwoher die Zuordnung von Cachename zum lokalen Bild herbekommen. Und das muss ja irgendwo in der Datenbank stehen. Aber wie lese ich die am Besten ein.
Naja, die wirklichen Spoilerbilder bekommst Du nur mit GSAK alleine nicht, weil sie nicht in der GPX-Datei verlinkt sind (-> SpoilerSync).

Was die Bilder angeht, die in der Beschreibung eingebunden sind, vermute ich folgende Realisierung innerhalb von GSAK:
  • Die Zuordnung von den Bildern in der Beschreibung zu Grabbed Images läuft komplett über die von mir genannte Datei.
  • Wenn GSAK statt der Online- die Offline-Bilder benutzen soll, sucht es innerhalb der Datei die richtige Adresse und ersetzt diese im HTML-Code mit dem Pfad und Dateinamen.

Die Richtung "Zu welchem Cache gehört die Datei?", wie Du sie benötigst, wird meiner Meinung nach in GSAK nicht benutzt und daher auch nicht abgespeichert. Dein Makro müsste also wohl alle interessanten Caches durchgehen, nachgucken, ob die per <img src="http://..."> in der Beschreibung eingebundenen Bilder in files.txt vorkommen und dann die entsprechende Bilddatei mit neuem Namen umkopieren.

Sollte es dennoch irgendwo stehen, lasse ich mich aber auch gerne belehren ;)
 
Oben