Thanks for your reply, Mateusz.

I know (and use) Overpass turbo. However, what I want to do is to store a query 
and execute it in order to update results and store them as a file for further 
manipulation, so I can easily update results without the need to accessing to 
the interface, generate the query, run it and then download the results. I 
would like to achieve same functionallity but just by executing a file (which, 
additionally, may have more than one query).

So far, I found [overpy](https://github.com/DinoTools/python-overpy), which 
seems to work fine in terms of querying but has two problems for me:

- It seems to be unmaintained (last commit dates from April 2017)
- I didn't succeed in storing the result into a geospatial file (or a geopandas 
data frame) (visit this jupyter lab with my current achievements: 
https://github.com/ccamara/osm-python/blob/master/overpy-demo.ipynb)

I also have just found [Overpass API 
wrapper](https://github.com/mvexel/overpass-api-python-wrapper), but I still 
have to explore it and understand how does it work and how can I tame it to my 
needs.

You propose a third way, which is using overpass and writing a script. It is 
not clear to me what do you mean with that, since I thought that that was 
precisely what I was attempting. Could you be more specific, please? Do you 
have other insight?

Regards,
Carlos

Carlos Cámara-Menoyo
https://carloscamara.es

‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
On Monday 11 March de 2019 a les 14:15, Mateusz Konieczny 
<matkoni...@tutanota.com> wrote:

> Mar 11, 2019, 11:18 AM by talk@openstreetmap.org:
>
>> Dear colleagues,
>>
>> I have just started to use Python and I would like to make a query to 
>> Overpass and store the results in a geospatial format (e.g. GeoJSON) so I 
>> can programatically update the data.
>>
>> As far as I know, there is a library called overpy that should be what I am 
>> looking for. After reading [its 
>> documentation](https://python-overpy.readthedocs.io/en/latest/example.html) 
>> 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;
>>     """
>>
>> )
>>
>> The thing is that 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.
>>
>> Can anyone give me a clue with this?
>
> Are you familiar with http://overpass-turbo.eu/ 
> https://wiki.openstreetmap.org/wiki/Overpass_turbo ?
>
> There are two parts here
>
> (1) using overpass itself
> (2) writing python script
>
> That are separate (you can call Overpass API from any program, not just 
> python)
>
> "I have just started to use Python" - note that it means learning two 
> separate languages at once:
>
> (1) Python itself
> (2) Overpass query syntax
>
> PS In case that Overpass is new for you my page may be of some use:
>
> https://mapsaregreat.com/geographic-data-mining-and-visualisation-for-beginners/overpass-turbo-tutorial.html
_______________________________________________
talk mailing list
talk@openstreetmap.org
https://lists.openstreetmap.org/listinfo/talk

Reply via email to