python-overpy
python-overpy copied to clipboard
Write to file
Is it possible to dump the output to a GeoJSON file?
I am also wondering the same: I am pretty new to python (just landed to it) and I would like to make a query to Overpass and store the results in a geospatial format (e.g. GeoJSON).
After reading this documentation page I came up with the following code:
import overpy
API = overpy.Overpass()
# Fetch highways within Granollers' city.
result = API.query("""
area[name="Granollers"][admin_level=8];
// query part for: “highway=*”
(way["highway"](area);
relation["highway"](area);
);
// print results
out body;
""")
Unfortunately, I am not familiar at all with python and I don't know how to store result
as a GeoJSON file (Honestly, I don't even know what kind of thing result
is -I tried with type(result)
and I get overpy.Result
as an output, which doesn't mean much to my poor knowledge). I have been reading overpy
documentation but I haven't been able to figure it out.
There is a library to do osm to geojson osmtogeojson, but it requires to have the raw data (xml or json) as returned by Overpass API. I consider that doing geojson conversion is probably off-topic for overpy, but could be nice to have something like a raw str
result returned from overpy
to use as input for other tools like osmtogeojson
There is a library to do osm to geojson osmtogeojson, but it requires to have the raw data (xml or json) as returned by Overpass API. I consider that doing geojson conversion is probably off-topic for overpy, but could be nice to have something like a raw
str
result returned fromoverpy
to use as input for other tools likeosmtogeojson
osmium-tools with "export" command is not well known but do the same (osm to geojson) efficiently (c compiled).
There is a library to do osm to geojson osmtogeojson, but it requires to have the raw data (xml or json) as returned by Overpass API. I consider that doing geojson conversion is probably off-topic for overpy, but could be nice to have something like a raw
str
result returned fromoverpy
to use as input for other tools likeosmtogeojson
Overpass Python Wrapper gives back GEOJSON and also raw XML/JSON data in just a few lines of code. https://github.com/mvexel/overpass-api-python-wrapper