Hi
what if i do not have the data on my machine - can i do a overpass-api request at the overpass-api endpoint: derived from here: http://forum.openstreetmap.org/viewtopic.php?pid=364460#p364460 _ and thanks go out to suncobald
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(query_overpass("node", 7.1,51.2,7.2,51.3,"amenity","restaurant|pub|ice_cream|food_court|fast_food|cafe|biergarten|bar|bakery|steak|pasta|pizza|sushi|asia|nightclub"))
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"]
print ", "
end
if !x.elements["tag[@k='addr:city']"].nil?
print x.elements["tag[@k='addr:city']"].attributes["v"]
print ", "
end
if !x.elements["tag[@k='addr:street']"].nil?
print x.elements["tag[@k='addr:street']"].attributes["v"]
print ", "
end
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"]
print " | "
if !x.elements["tag[@k='website']"].nil?
print x.elements["tag[@k='website']"].attributes["v"]
end
print " | "
if !x.elements["tag[@k='amenity']"].nil?
print x.elements["tag[@k='amenity']"].attributes["v"]
print " | "
end
puts
}
asked
12 Jun '14, 13:56
say_hello_to...
19●23●24●27
accept rate:
0%
Sure, isn't that what your(?) code is already trying? It contacts http://www.overpass-api.de. So what is your actual problem?
Oh, well, SunCobalt created this script originally, here's the link to his forum post: http://forum.openstreetmap.org/viewtopic.php?pid=364460#p364460
Looks like the OP doesn't really know what to do with it?