[OSM-talk] Overpass API - Fetching countries, their capitals, and their borders

Dave F davefoxfac63 at btinternet.com
Wed Aug 14 12:51:56 UTC 2019


This may help for future routines, if not this one:

nwr[place~"city|town"][capital=yes][admin_level=2]->.Capitals;
.Capitals out center;

in your original you were initially searching *all* of the world's towns 
& cities instead of 194 capitals. (OSM appears to be missing one)

It'll need checking but I think all capital cities should be returned as 
members in the set of boundary relations with the role of 'admin_centre'.

https://overpass-turbo.eu/s/Lwe

[bbox:{{bbox}}];
rel[boundary=administrative][admin_level=2];
nwr(r:admin_centre);
out center;

You appear to be outputting both boundary relations & ways which seems a 
bit pointless
This returns all ways within the relations:
https://overpass-turbo.eu/s/Lwk

[bbox:{{bbox}}];
rel[boundary=administrative][admin_level=2];
way(r._);
out geom;

HTH
DaveF.

On 14/08/2019 09:29, Léo El Amri via talk wrote:
> Hi again,
>
> Thanks for the replies
>
> I did several other tries this morning, but it looks like the borders
> are too much to handle. Taking your answers into account, rather than
> doing thousands of queries on the Overpass API, I think I'll get the
> whole Planet file, then use a local tool to get the data (Anyways, in
> this context, I only need this info occasionally).
>
> Cordially,
> Léo
>
> On 13/08/2019 23:41, Léo El Amri via talk wrote:
>> Hello,
>>
>> I'm trying to fetch countries, their borders, and their capitals through
>> Overpass API, but the server never replies to me (With a timeout:3600
>> setting, the server reply with a 502 error after a while).
>> I'm only a beginner with this API, so maybe my request is not efficient:
>>
>> (
>>    node[place=city];
>>    node[place=town];
>> )->.a;
>> rel[boundary=administrative][admin_level=2]->.b;
>> (
>>    node[place=country];
>>    node.a[capital=yes];
>>    way[boundary=administrative][admin_level=2];
>>    .b;
>>    .b >;
>> )->.o;
>> .o out body;
>>
>> What am I doing wrong ? (Should I use another tool for this purpose ?)
>>
>> Cordially,
>> Léo
>>
>> _______________________________________________
>> talk mailing list
>> talk at openstreetmap.org
>> https://lists.openstreetmap.org/listinfo/talk
>>
> _______________________________________________
> talk mailing list
> talk at openstreetmap.org
> https://lists.openstreetmap.org/listinfo/talk




More information about the talk mailing list