Adressdaten aus OSM Datei filtern

Genau, und nicht zu vergessen, dass insb. in Freiburg noch der associatedStreet-Sonderfall zu berücksichtigen ist. Ergebnis hier:

http://maps.aimpulse.com/osm/2014-05-18-adressen-freiburg.csv

Ich hatte auch gedacht, ob die Postdaten für diesen Zweck nicht doch die bessere (und vor allem einfachere) Wahl sind, habe mir das aber verkniffen. Wenn man allein die PLZ-Daten allerdings auch nach Außen nutzen will, wird es teurer (ca. 6000 500 EUR pro Jahr, soweit ich mich entsinne).

Bei mir im Wiki gibt es ja eine Auswertung zur Anzahl der Adressen. Es sind ca. 5,7 Mio in DE.

Genau, die blöden Dinger hab ich glatt vergessen.

Uii, hätt ich nicht gedacht.

ok, ich mach einen Service dafür auf (Alle Adressen … aus OSM 4x im Jahr zur beliebigen Verwendung - 1000 €/Jahr) :wink:

Ich lass die Query mal weiterlaufen, mal sehen ob wir annähernd synchron sind. Aber ohne asozialeStreets.

Gruss
walter

Habe das wohl mit einigen Geo-Daten des Bundes verwechselt. Ich sehe nur 420,- EUR pro Jahr, wenn es im Internet genutzt werden soll.

http://www.deutschepost.de/content/dam/dpag/images/D_d/DDP/Downloads/Datafactory/20131201_datafactory_basic_bestellung_endkunde_f.pdf

Setzt man einen moderaten Stundenlohn an, habe wir das hier im Thread schon locker überschritten.

Willst du in einen Lizenzkonflikt geraten?

Wieso denn? Andauernd wird damit “geworben”, daß die OSM-Daten frei und offen sind und wir erklären jedem, wie er daran kommt - und dann soll es kritisch sein, ihm diese Arbeit gegen Bezahlung abzunehmen?
Das einzige was mir (am frühen Morgen) dazu einfällt, ist die Problematik bei der Vermischung der Daten mit anderen Datenbanken. Aber die besteht auch, wenn der “Interessent” die ganze Arbeit selber macht.

Aber ist eh nur graue Theorie und war - für mich - mehr als Gag gedacht.

Gruss
walter

ps: erfolgreiche Startups bitte in 2 Jahren mal bei mir melden :wink:

Das Problem ist lediglich die beliebige Verwendung. Die Auflage der Lizenz ist ja auch mit dem Hinweis auf den Ursprung sehr gering. Und das müssen auch weiterverwender tun. Insofern kannst du sie für fast alles zur Verfügung stellen.

das wird vermutlich mein neuer Ansatz für die nächsten Tage… :rage:

Ich möchte halt nicht nur ein Verzeichnis der Postleitzahlen, sondern eben auch aller postalischen Adressen in Deutschland. Und das günstigste Angebot, was ich finden konnte waren für 12 Monate 2600€, was mir leider zu viel ist.

Stimmt. Das von mir verlinkte Angebot enthält nicht die Straßendaten, sondern nur Orte und PLZ. Die Post bietet baer auch ein Straßenverzeichnis. Den Preis muss man allerdings als Angebot erst einholen. Weißt Du, was das dann kostet, wenn es nicht nur intern Verwendung findet?

Das Straßenverzeichnis der Post wurde mir für eine Lizenzgebühr von 10 000€ pro Jahr + 0,0055€ pro Datenabfrage angeboten. :roll_eyes:

Also nur der Service, nicht die Daten. Krass!

Guter Entschluss :slight_smile:

Wenn du Postgresql/PostGIS am laufen hast, solltest du mit osm2pgsql den Bereich deiner Wahl importieren. Würde nur nicht gerade mit germany anfangen sondern z.B. mit bremen-latest.osm.pbf.
Nach dem - erfolgreichen - Import stehen dir die benötigten Grenzpolygone automatisch zur Verfügung.

Alles andere später.

Gruss
walter

Soooo, Postgres + Postgis sind aufgesetzt. Als Daten habe ich Freiburg, mit der Option --hstore importiert. Lief überraschend gut und schnell :smiley:

Weiter versuche ich gerade alle Relationen vom Typ boundary=postal_code auszulesen. Das scheint etwas schwieriger zu werden. Ich halte euch auf dem Laufenden…

Noch motivierte Grüße

oberschlumpf

gratuliere, hstore war schonmal saugut :wink:

Fragen über Fragen:

  • welches Datenfile genau?
  • wie bist du an “nur Freiburg” rangekommen?
  • welche osm2pgsql-Optionen? (genaues Kommando)

nicht versuchen - machen:


select osm_id,tags,st_summary(way)
  from planet_osm_polygon
 where osm_id < 0
   and tags->'boundary'='postal_code';

und für die Admin-Grenzen


select osm_id,tags,st_summary(way)
  from planet_osm_polygon
 where osm_id < 0
   and tags->'boundary'='administrative'
   and tags->'admin_level' in('6','7','8');

Da dürfte für “Freiburg alleine” aber sehr wenig kommen. Nimm lieber den Kreis Freiburg.

Gruss
walter

ps: bei den Admin-Leveln muß man später noch nachbessern - es gibt Kreise mit AL6, Kreisfreie Städte mit AL6, Gemeindeverbünde mit AL7 und auch wirklich Städte/Gemeinden mit AL8.

Nächster Schritt ist geschafft :slight_smile:

Habe mit

select osm_id,tags->'postal_code' as PLZ from planet_osm_polygon where boundary='postal_code' order by plz

alle PLZ und ID’s der Polygone sammeln können. Die Frage ist nun wie ich alle Nodes mit Tag addr:* innerhalb des entsprechen Polygons auslese??

oberschlumpf

EDIT:

@Walter
jetzt haben sich unsere Posts überschritten…

Datenfile war “freiburg-regbez-latest.osm.pbf”

Den Import unter Windows Server 2008 R2 x64 lief mit:

osm2pgsql.exe -c -d postgis_test -U postgres --hstore -H localhost -P 5432 -S default.style Datenfile

Allerdings musste ich etwas an der default.style tricksen damit dies unter Win 64bit funktiniert…

Für was benötige ich noch die Admin Grenzen?

ein wenig mußt du schon selber machen :wink:

Aber beantworte bitte erstmal meine Fragen. Wenn du da nicht aufpasst, kann das nix werden.

Der Ort (die Gemeinde) gehört zu einer ordentlichen Adresse ja dazu. Ist auch nicht unbedingt als “addr:city” getaggt, und wenn doch dann nicht unbedingt richtig.
Es geht also eigentlich um die Überschneidungsflächen der Gemeindepolygone mit den PLZ-Polygonen.

EDIT: Wobei ich nicht verschweigen möchte, dass der Adressort laut DPAG nicht unbedingt identisch mit dem Gemeindenamen ist.

Bin bei mir auf 1.839.946 Nodes und 4.357.201 Ways gekommen, macht 6.19 Mio. wobei die Abfrage relativ einfach war (im Sinne von primitiv)

gruss
walter

Meine Abfrage ist ein paar Tage her. Aber der Unterschied ist schon recht groß.

Mein Query hat die Adressen je Gemeinde ausgewertet (nur ways und nodes, die mind. housenumber und street haben, weil ich das sonst nicht als verwertbare Adresse ansehe; associatedStreet dabei noch ignoriert)
Was war bei Dir die Suchbedingung?