立交桥查询适用于overpass-turbo.eu,但不适用于本地

时间:2019-03-07 10:13:18

标签: python openstreetmap overpass-api

我正在尝试从Python脚本执行Overpass查询。我在overpass-turbo.eu上练习,发现以下查询可按预期工作:

"(gc '%~1') -replace '%~2', '%~3' | Out-File -encoding ASCII %~1"

但是,当我从Python脚本提交完全相同的查询时,出现错误:

[out:json][timeout:600];
{{geocodeArea:Niedersachsen}}->.searchArea;
(
  node[place=city](area.searchArea);  
  node[place=town](area.searchArea);  

);
out;

这是为什么?似乎与花括号有关,但我不知道该如何解决。

非常感谢,

Enno

1 个答案:

答案 0 :(得分:0)

花括号(aka {{geocodeArea:Niedersachsen}})是立交桥Turbo的特殊功能,不属于立交API。有关这些快捷方式的列表,请参见extended overpass turbo queries

{{geocodeArea:name}}将告知立交桥Turbo使用Nominatim执行地理编码请求。然后它将使用第一个结果构造一个area(id)查询。您必须在程序中执行相同的步骤(使用Nominatim或任何其他geocoder)。