mirror of
https://github.com/publiclab/mapknitter.git
synced 2025-12-05 16:00:00 +01:00
17 lines
424 B
Ruby
17 lines
424 B
Ruby
require 'net/http'
|
|
require 'uri'
|
|
gem 'crack'
|
|
require 'crack'
|
|
|
|
class ParseKml
|
|
def self.parse(url)
|
|
kml = Net::HTTP.get URI.parse(url)
|
|
id = kml.hash.to_s + rand(999999999).to_s
|
|
File.open("tmp/gpsbabel/#{id}.kml", 'w') do |f|
|
|
f.write(kml)
|
|
end
|
|
system "gpsbabel -i kml -f tmp/gpsbabel/#{id}.kml -o osm -F tmp/gpsbabel/#{id}.osm"
|
|
osm = IO.read("tmp/gpsbabel/#{id}.osm")
|
|
return Crack::XML.parse(osm)
|
|
end
|
|
end |