Геоданные
Обратный геокодинг
Обратное геокодирование - это процесс приведения географических координат (а также, в нашем случае, ID отношения) в описание местоположения. То есть, это процесс, обратный процессу геокодирования. Эта функция может быть полезна для получения полной географической информации об определенном месте, если у вас есть его координаты или ID отношения.
С командой reverse могут быть использованы следующие параметры:
Параметр | Описание |
---|---|
relation | ID отношения, если указан, будет произведен поиск по ID вне зависимости от других параметров. Опциональный параметр. |
lat | Широта. Опциональный параметр. |
lon | Долгота. Опциональный параметр. |
Пример обратного геокодирования по ID отношения.
# ПЕРЕХОДИМ В ГЕО КОНТЕКСТ
- geo:
provider: osm
do:
# Получаем информацию о местоположении по ID отношения
- reverse:
relation: 62366
do:
Time | Level | Message |
---|---|---|
2018-05-29 23:38:42:851 | info | Stopped by exit command |
2018-05-29 23:38:42:835 | debug | Page content: ... |
2018-05-29 23:38:42:056 | info | Retrieving page (GET): https://nominatim.openstreetmap.org/reverse?osm_type=R&osm_id=62366&format=json |
2018-05-29 23:38:42:047 | debug | Getting reverse geo information by relation ID: 62366 |
2018-05-29 23:38:42:038 | debug | Setting up geo provider: osm |
2018-05-29 23:38:42:029 | info | Starting scrape |
2018-05-29 23:38:42:002 | debug | Setting up default proxy |
2018-05-29 23:38:41:993 | debug | Setting up surf |
2018-05-29 23:38:41:956 | info | Starting digger: 1 [2158] |
<html>
<head></head>
<body>
<body_safe>
<address>
<continent>Europe</continent>
<country>Deutschland</country>
<country_code>de</country_code>
<state>Thüringen</state>
</address>
<boundingbox>50.2043467</boundingbox>
<boundingbox>51.6489423</boundingbox>
<boundingbox>9.8767193</boundingbox>
<boundingbox>12.6539178</boundingbox>
<display_name>Thüringen, Deutschland, Europe</display_name>
<lat>50.7333163</lat>
<licence>Data © OpenStreetMap contributors, ODbL 1.0. https://osm.org/copyright</licence>
<lon>11.0747905</lon>
<osm_id>62366</osm_id>
<osm_type>relation</osm_type>
<place_id>179115036</place_id>
</body_safe>
</body>
</html>
Пример обратного геокодирования по координатам места.
# ПЕРЕХОДИМ В ГЕО КОНТЕКСТ
- geo:
provider: osm
do:
# Получаем информацию о местоположении по координатам
- reverse:
lat: 41.8775257
lon: -87.62955615
do:
Time | Level | Message |
---|---|---|
2018-05-29 23:59:30:408 | info | Stopped by exit command |
2018-05-29 23:59:30:394 | debug | Page content: ... |
2018-05-29 23:59:29:683 | info | Retrieving page (GET): https://nominatim.openstreetmap.org/reverse?lat=41.8775257&lon=-87.62955615&format=json |
2018-05-29 23:59:29:674 | debug | Getting reverse geo information by lat/lon: 41.8775257/-87.62955615 |
2018-05-29 23:59:29:666 | debug | Setting up geo provider: osm |
2018-05-29 23:59:29:657 | info | Starting scrape |
2018-05-29 23:59:29:631 | debug | Setting up default proxy |
2018-05-29 23:59:29:617 | debug | Setting up surf |
2018-05-29 23:59:29:585 | info | Starting digger: 1 [2158] |
<html>
<head></head>
<body>
<body_safe>
<address>
<building>Monadnock Building</building>
<city>Chicago</city>
<country>United States of America</country>
<country_code>us</country_code>
<county>Cook County</county>
<house_number>53</house_number>
<neighbourhood>Loop</neighbourhood>
<postcode>60604</postcode>
<road>West Jackson Boulevard</road>
<state>Illinois</state>
</address>
<boundingbox>41.876976</boundingbox>
<boundingbox>41.8780754</boundingbox>
<boundingbox>-87.6297057</boundingbox>
<boundingbox>-87.6294066</boundingbox>
<display_name>Monadnock Building, 53, West Jackson Boulevard, Loop,
Chicago, Cook County, Illinois, 60604, United States of America</display_name>
<lat>41.8775257</lat>
<licence>Data © OpenStreetMap contributors, ODbL 1.0. https://osm.org/copyright</licence>
<lon>-87.62955615</lon>
<osm_id>73671128</osm_id>
<osm_type>way</osm_type>
<place_id>85949297</place_id>
</body_safe>
</body>
</html>
Далее мы узнаем как можно нормализовать адрес и разбить его на элементы.