Hej,

jag har skrivit ett Perl-skript som kan användas till att jämföra
Västtrafiks (Västra Götalandsregionen) och OSM:s databaser om
hållplatser.
Data från Västtrafik hämtas via deras API:n (kostnadsfri
registrering krävs för att få API-nyckel). Skriptet fungerar på
följande sätt:

1. Användaren anger API-nycklen till api.vasttrafik.se samt
startkoordinater där sökningen ska genomföras.
2. Skriptet hämtar närmaste hållplatser från Västtrafik.
3. Skriptet laddar ner data från OSM som motsvarar området där
hållplatser finns.
4. Alla hållplatser Västtrafik känner igen jämförs med alla
hållplatser OSM känner igen (distans emellan samt namnlikhet via
Levenshtein-distans)
5. Hållplatser som har ingen motpart listas

Skriptet finns i min git-repository:
https://gitorious.org/tfscripts/openstreetmap

Här följer ett exempelutskrift från skriptet:

# perl osm-vasttrafik.pl vasttrafikapikey.txt 57.73541 12.0702
Used Vasttrafik API key: 0123-4567-89ab-cdef
Start location is  lat= 57.73541  lon= 12.07020
Fetching URL
"http://api.vasttrafik.se/bin/rest.exe/v1/location.nearbystops?authKey=0123-4567-89ab-cdef&format=xml&originCoordLat=57.73541&originCoordLong=12.0702&maxNo=15";
Download succeeded with return code 200
Vasttrafik stations
                     Allévägen at  lat= 57.73273  lon= 12.07482
(distance= 405 )
                     Skolvägen at  lat= 57.73162  lon= 12.06990
(distance= 422 )
               Frimästaregatan at  lat= 57.73935  lon= 12.06982
(distance= 439 )
                   Gibsons väg at  lat= 57.73128  lon= 12.06370
(distance= 600 )
        Sävedalens folkets hus at  lat= 57.73326  lon= 12.08028
(distance= 645 )
Found  5  Vasttrafik stations in area
  Distance from start point in meters: 405 ... 645
Bounding box of Vasttrafik stations:
  lat= 57.73120  lon= 12.06296
  lat= 57.73945  lon= 12.08050
Fetching URL
"http://api.openstreetmap.org/api/0.6/map?bbox=12.062457,57.730697,12.081004,57.739949";
Download succeeded with return code 200
OSM stations
                     Skolvägen at  lat= 57.73179  lon= 12.07036
(distance= 402 )
                     Skolvägen at  lat= 57.73179  lon= 12.06953
(distance= 405 )
                   Gibsons väg at  lat= 57.73141  lon= 12.06450
(distance= 559 )
Found  3  OSM stations in area
  Distance from start point in meters: 402 ... 559
Matched stations:
                   Gibsons väg at  lat= 57.73128  lon= 12.06370
(distance= 600 )
                         matching
                   Gibsons väg at  lat= 57.73141  lon= 12.06450
(distance= 559 )

                     Skolvägen at  lat= 57.73162  lon= 12.06990
(distance= 422 )
                         matching
                     Skolvägen at  lat= 57.73179  lon= 12.07036
(distance= 402 )
Unmatched Vasttrafik (not found in OSM):
                     Allévägen at  lat= 57.73273  lon= 12.07482
(distance= 405 )
http://www.openstreetmap.org/?mlat=57.732734&mlon=12.074823&zoom=17&layers=M
               Frimästaregatan at  lat= 57.73935  lon= 12.06982
(distance= 439 )
http://www.openstreetmap.org/?mlat=57.739350&mlon=12.069825&zoom=17&layers=M
        Sävedalens folkets hus at  lat= 57.73326  lon= 12.08028
(distance= 645 )
http://www.openstreetmap.org/?mlat=57.733256&mlon=12.080279&zoom=17&layers=M
Unmatched OSM (not found in Vasttrafik):
  NONE
Too far away Vasttrafik station:
  NONE
Too far away OSM station:
  NONE


Synpunkter och kommentarer tas tacksam emot!

Hälsningar,
Thomas

Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
Talk-se mailing list
[email protected]
http://lists.openstreetmap.org/listinfo/talk-se

Till