http://nominatim.openstreetmap.org/search?format=json&q=%D0%9A%D1%80%D0%BE%D0%BD%D1%88%D1%82%D0%B0%D0%B4%D1%82%D1%81%D0%BA%D0%B8%D0%B9%20%D1%80%D0%B0%D0%B9%D0%BE%D0%BD,%20%D0%A1%D0%B0%D0%BD%D0%BA%D1%82-%D0%9F%D0%B5%D1%82%D0%B5%D1%80%D0%B1%D1%83%D1%80%D0%B3&polygon_geojson=1Всё Получаем в ответ geojson (массив с географическими координатами) и делаем с ним что хотим.
Например, я решил обработать его в несколько ином виде, чтобы скармливать Яндекс.Картам. Для этого я накидал простеньку функцию на PHP:
Источник - http://zabolotskikh.com/tips/kak-poluchit-koordinaty-rayonov/functionareaCoordsParser($search){$query= http_build_query(['format'=>'json','q'=>$search,'polygon_geojson'=> 1,]);$url="http://nominatim.openstreetmap.org/search?$query";$response= json_decode(file_get_contents($url), true);$result= [];if($response[0]['geojson']['type'] ==='MultiPolygon') {$coords=$response[0]['geojson']['coordinates'];foreach($coordsas$coord) {$temp= [];foreach($coord[0]as$item) {$temp[] =array_reverse($item);}$result[] =$temp;}}elseif($response[0]['geojson']['type'] ==='Polygon') {$coords=$response[0]['geojson']['coordinates'][0];foreach($coordsas$coord) {$result[] =array_reverse($coord);}}return$result;}echojson_encode(areaCoordsParser('Адмиралтейский район, Санкт-Петербург'));