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

Images sparsamer spidern?

Engywuck

Geowizard
Liebe Gemeinde,
wenn ein Cache aktualisiert wird, werden die Bilder alle noch mal geholt. Ich habe jedoch den Eindruck, dass die Bilder bei geocaching.com alle eine unique URL haben - wenn der Owner das Bild aktualisiert, gibts vermutlich eine neue URL. Kann das jemand bestätigen?
Falls dem so ist, könnte man sich das erneute Holen der Bilder sparen, wenn man die gleiche URL wie beim letzten Mal vorfindet. Das dürfte ziemlich Performance bringen. Bei externen Links gilt dieser Trick natürlich nicht, da muss man immer neu holen.

Gruß,
E.
 

salzkammergut

Geomaster
Die Idee finde ich gut. Ich habe mal versucht ob es geht bei einer Cachebeschreibung ein Bild durch ein anderes zu ersetzten. Dazu muss es aber zuerst gelöscht werden und dann neu angelegt. Damit bekommt es aber auch eine neue ID. Ich kann natürlich nicht sagen ob das generell so ist, würde es aber stark vermuten.

Es ist allerdings möglich, bei der Cachebeschreibung Bilder in 90° Schritten zu drehen ohne dass eine neue ID vergeben wird. Das sollte aber kein Hindernis sein Bilder, die bereits geladen wurden, nicht noch einmal zu laden. (Vorsicht: Es könnte sich aber die Reihenfolge der Bilder geändert haben wenn die Cachebeschreibung aktualisiert wurde).

Grüße
skg
 
OP
Engywuck

Engywuck

Geowizard
So, ich habe mich der Sache mal angenommen. Bilder werden jetzt nicht mehr geladen, wenn sie von img.geocaching.com/cache/ oder img.groundspeak.com/cache/ kommen und dem Cache bereits bekannt sind. Wenn ich mein Home-Profil aktualisiere, sollte das für ca. 95% aller Bilder zutreffen. Meine Tests zeigen eine signifikante bis dramatische Beschleunigung des Update-Vorgangs :irre2: .

Ab Build 1991 stehts zur Verfügung.

Gruß,
E.

Edit: Ob ein ähnlicher Mechanismus auch für opencaching möglich ist, weiss ich nicht - was sagen die Fachleute?
 
OP
Engywuck

Engywuck

Geowizard
Aufgrund eines Hinweises von skg auf einen problematischen Cache muss ich die Änderungen noch mal prüfen. Daher Rückzug der Änderungen, bis ich Zeit habe, das zu prüfen....

Gruß,
E.
 
OP
Engywuck

Engywuck

Geowizard
So, jetzt sollte es funktionieren. (Build 1997)
skg hatte dabei noch ein Beispiel ausgegraben (GCQYV9), das nicht funktionierte. Hier handelte es sich jedoch um einen Bug, der eigentlich schon länger im System war, somit habe ich den auch gleich mit ausgebaut. Das Bugfix hat es erforderlich gemacht, dass die Dateinamen für Bilder nun anders vergeben werden, und zwar immer fortlaufend (GCXXXX_0, _1, _2... ) ohne Lücken. Die knifflichsten Änderungen hat dabei die Methode SpiderGC.getImages(String, CacheHolderDetail) erfahren. Hier sind die Freaks gerne zum Sourcecode-Review eingeladen ;-) . Bei mir funktioniert soweit alles, auf was ich beim Testen gekommen bin.

Ach ja, noch ein Fehler, den ich dabei ausgebaut habe: Wenn man einen GC-Cache aktualisiert und dabei den Haken bei "Bilder downloaden" nicht setzt, so werden zwar keine Bilder runtergeladen, allerdings werden auch alle Verweise auf Bilder im Cache gelöscht. Dies habe ich jetzt mal geändert: Wenn man keine Bilder runterlädt, wird der aktuelle Bilderstand beibehalten.
Bei den OC-Caches habe ich das noch nicht angepasst, den Code verstehe ich auch noch nicht so gut ;-)

Sollte irgendwas nicht so funktionieren wie erwartet, bitte ich um Rückmeldung - aber das macht ihr ja eh schon :) .

Gruß,
E.
 

Geo-Johnny

Geowizard
Ich habe es mal probiert. Auf die Schnelle ist mir nichts Negatives aufgefallen, dürfte funktionieren ...
 

pfeffer

Geowizard
Bilder werden zumindest noch geladen und angezeigt bei Opencaching.
Allerdings wird bei http://www.opencaching.de/viewcache.php?cacheid=136372 das Bild doppelt angezeigt.
Es könnte allerdings sein, dass dieser Bug alt ist.
Bei OC werden die Beschreibungen nach Links zu Bildern untersucht - und sollten eigentlich nur dann heruntergeladen werden, wenn sie nicht bereits vorhanden sind oder nicht auf dem opencaching-server liegen.
Bilder liefert Opencaching außerdem extra, die werden dann anschließend noch geladen.

Gruß,
Pfeffer.
 

MiK

Geoguru
Engywuck schrieb:
Ach ja, noch ein Fehler, den ich dabei ausgebaut habe: Wenn man einen GC-Cache aktualisiert und dabei den Haken bei "Bilder downloaden" nicht setzt, so werden zwar keine Bilder runtergeladen, allerdings werden auch alle Verweise auf Bilder im Cache gelöscht. Dies habe ich jetzt mal geändert: Wenn man keine Bilder runterlädt, wird der aktuelle Bilderstand beibehalten.
Hatten wir nicht einmal ein Problem, dass die Darstellung langsamer wird, weil versucht wird Bilder im Internet nachzuladen? Hatten wir dagegen etwas unternommen? Ansonsten sollten die Hinweise evtl. doch entfernt werden, wenn die Bilder nicht schon da sind.
 
OP
Engywuck

Engywuck

Geowizard
MiK schrieb:
Engywuck schrieb:
Ach ja, noch ein Fehler, den ich dabei ausgebaut habe: Wenn man einen GC-Cache aktualisiert und dabei den Haken bei "Bilder downloaden" nicht setzt, so werden zwar keine Bilder runtergeladen, allerdings werden auch alle Verweise auf Bilder im Cache gelöscht. Dies habe ich jetzt mal geändert: Wenn man keine Bilder runterlädt, wird der aktuelle Bilderstand beibehalten.
Hatten wir nicht einmal ein Problem, dass die Darstellung langsamer wird, weil versucht wird Bilder im Internet nachzuladen? Hatten wir dagegen etwas unternommen? Ansonsten sollten die Hinweise evtl. doch entfernt werden, wenn die Bilder nicht schon da sind.
Vielleicht ist es noch zu früh, aber: Den Zusammenhang hab ich jetzt nicht verstanden... :???:

Gruß,
E.
 

MiK

Geoguru
Was meinst Du denn mit "Verweise auf die Bilder im Cache"? Ich dachte du meinst die Links in der Cachebeschreibung. Und dann kann es wohl auf manchen Systemen passieren, dass versucht wird, die Bilder aus dem Internet zu bekommen. Aber vielleicht ist es auch für mich zu früh und ich habe etwas falsch verstanden.
 
OP
Engywuck

Engywuck

Geowizard
Ah, ok. Mit "Verweise auf Bilder" meine ich die Bilder, die dem Cache über die Image-Section der cache.xml-Datei zugeordnet sind. Da steht dann plötzlich nix mehr, wenn der Cache aktualisiert wurde ohne "Bilder herunterladen". (Was einfach daran lag, dass die images-Auflistung des alten Cache-Objekts die Images-Auflistung des neuen (aktualisierten) Objekts übernommen hat. Und wenn diesem keine bilder zugewiesen wurden weil ausgeschaltet, dann hatte der cache hat plötzlich keine Bilder mehr.)

Gruß,
E.

P.S.: Ist das im OC-Fall denn nicht so, dass die Bilder in der HTML-Beschreibung auf lokale Referenzen umgebogen werden?
 
Oben