Data sources - GeoKretyMap/gkm GitHub Wiki
geokrety.org
There are many available methods to obtain informations from geokrety.org. But none of them permit:
- full synchronization with all available data
- incremental synchronization with all available data
- partial syn are limited to 10 days
- not sure if export methods show updated data (description, log, logtype...)
export2.php
doesn't provide just created Geokrety
Those tables show which information is available per method.
The most effective method of synchronization in term of data completeness seems to be a combination of page crawling coupled with csv moves exports. Does this imply more load on geokrety.org server than using export.php?
Standard
field |
page crawling |
export2.php |
export.php |
export_oc.php |
GPX |
csv |
gkid |
X |
X |
X |
X |
X |
X |
name |
X |
X |
X |
X |
|
|
waypoint |
X |
X |
X |
X |
X |
X |
missing |
X |
|
X |
|
|
|
distancetravelled |
X |
X |
X |
X |
|
|
state |
X |
X |
X |
X |
|
|
image avatar uri |
X |
X |
|
|
|
|
last_pos_id |
? |
X |
|
|
|
|
last_log_id |
X |
X |
X |
|
|
X |
Details
field |
parge parsing |
export2.php |
export.php |
export_oc.php |
GPX |
csv |
gkid |
X |
X |
X |
X |
X |
|
description |
X |
|
X |
|
|
|
owner id |
X |
X |
X |
|
|
|
owner name |
X |
|
X |
|
|
|
datecreated |
|
|
X |
|
|
|
places |
X |
|
|
|
|
|
position latitude |
|
X |
X |
X |
X |
X |
position longitude |
|
X |
X |
X |
X |
X |
type id |
X |
X |
X |
|
|
|
type name |
X |
|
X |
|
|
|
image title |
X |
|
|
|
|
|
image uri |
X |
|
|
|
|
|
image avatar title |
X |
|
|
|
|
|
votes |
X |
|
|
|
|
|
Moves
field |
parge parsing |
export2.php |
export.php |
export_oc.php |
GPX |
csv |
ALL LOGS |
X |
|
|
|
|
|
UPDATES LOGS |
|
|
|
|
|
|
id |
X |
|
X |
|
|
X |
position latitude |
|
|
X |
|
X |
X |
position longitude |
|
|
X |
|
X |
X |
wpt |
X |
|
X |
|
X |
X |
date moved |
X |
|
X |
|
X |
X |
date logged |
|
|
X |
|
|
|
user id |
X |
|
X |
|
|
|
user name |
X |
|
X |
|
|
|
application using (api) |
X |
|
|
|
|
|
application name |
X |
|
|
|
|
|
message |
X |
|
X |
|
|
X |
logtype id |
X |
|
X |
|
|
X |
logtype name |
X |
|
X |
|
|
|
distancetravelled unit |
X |
|
|
|
|
|
distancetravelled value |
X |
|
|
|
|
X |
country |
X |
|
|
|
X |
X |
Moves comments
field |
parge parsing |
export2.php |
export.php |
export_oc.php |
GPX |
csv |
comment |
X |
|
|
|
|
|
type |
X |
|
|
|
|
|
Synchronization strategy
Master
- Get last update date from
geokrety-details
or 10 days
- Poll @5min geokrety.org/export2.php?modifiedsince={lastupdate}
- Save in
pending-geokrety
- Get @1min a chunk of pending gk
- Crawl each page at geokrety.org?konkret={gkid} + gpx.xml
- Merge data
- Save as individual files /export/{gkid}.xml
- Add
date
and ownername
to the current gk from pending-geokrety
- Merge
pending-geokrety-details
into geokrety-details
- Save in
geokrety-details
- Merge
pending-geokrety
into geokrety
- Save in
geokrety
Slave
- Get last update date from
geokrety-details
or ??? days
- Poll @5min api.geokretymap.org/gk/details/${lastupdate}
- Save in
pending-geokrety-details
- Convert to simple format and save in
pending-geokrety
- Merge
pending-geokrety-details
into geokrety-details
- Save in
geokrety-details
- Merge
pending-geokrety
into geokrety
- Save in
geokrety