Es sollte so rauskommen, oder?
Name | Adresse | GPS Lat | GPS Long | Telefon | email | website | Kategorie (Restaurant, Bar, Café etc.)
die restlichen Felder zu ergänzen ist nur ne Fleißaufgabe
require 'open-uri'
require "net/http"
require 'rexml/document'
def query_overpass(object_type, left,bottom,right,top, key, value)
base_url = "http://www.overpass-api.de/api/xapi?"
query_string = "#{object_type}[bbox=#{left},#{bottom},#{right},#{top}][#{key}=#{value}]"
url = "#{base_url}#{URI.encode(query_string)}"
resp = Net::HTTP.get_response(URI.parse(url))
data = resp.body
return data
end
overpass_result = REXML::Document.new(overpass_result = query_overpass("node", 7.1,51.2,7.2,51.3,"amenity","restaurant"))
overpass_result.elements.each('osm/node') {|x|
if !x.elements["tag[@k='name']"].nil?
print x.elements["tag[@k='name']"].attributes["v"]
end
print " | "
if !x.elements["tag[@k='addr:postcode']"].nil?
print x.elements["tag[@k='addr:postcode']"].attributes["v"]
end
print ","
if !x.elements["tag[@k='addr:city']"].nil?
print x.elements["tag[@k='addr:city']"].attributes["v"]
end
print ","
if !x.elements["tag[@k='addr:street']"].nil?
print x.elements["tag[@k='addr:street']"].attributes["v"]
end
print ","
if !x.elements["tag[@k='addr:housenumber']"].nil?
print x.elements["tag[@k='addr:housenumber']"].attributes["v"]
end
print " | "
print x.attributes["lat"]
print " | "
print x.attributes["lon"]
# line break
puts
}
Ergebnis
Effmann's Restaurant | 42113,Wuppertal,Am Jagdhaus,100 | 51.2787378 | 7.1063065
Dios Taverne | ,,, | 51.2557935 | 7.1376288
Ralfs Boxenstop Imbiss | 42109,Wuppertal,Uellendahler Straße,406 | 51.2786471 | 7.1655499
Kebab Stube | 42105,Wuppertal,Briller Straße,15 | 51.2550353 | 7.1313882
Queerbeet | ,,, | 51.2558117 | 7.1391461
Bierhaus Sion | 42103,Wuppertal,Friedrich-Ebert-Straße,40 | 51.2555329 | 7.1377949
El Jamon | ,,, | 51.2543378 | 7.1349188
Mezcla2 | 42103,Wuppertal,Luisenstraße,61 | 51.2566067 | 7.1377865
Mezcla2 | 42103,Wuppertal,Luisenstraße,61 | 51.2566067 | 7.1377865
Dehli-Roma | 42103,Wuppertal,Friedrich-Ebert-Straße,37 | 51.2553710 | 7.1378582
Thai an | 42103,Wuppertal,Friedrich-Ebert-Straße,49 | 51.2551462 | 7.1372307
Zur Voßdelle | 42113,Wuppertal,Nevigeser Straße,316 | 51.2805247 | 7.1249164
Best Döner | 42369,Wuppertal,Staasstraße,46 | 51.2266228 | 7.1988778
Restaurant Delminium | 42103,Wuppertal,Hofkamp,91 | 51.2580291 | 7.1549056