Прошу сильно не пинать, с osm раньше не работал.
Для проекта понадобились координаты границ районов и мун. образований Москвы, МО, и новой Москвы, причем с соблюдением уровней административной вложенности (дочка-родитель). При этом ещё с объектами инфраструктуры (больницы, детсады, и ещё 2-3 вида).
В нём увидел большой аж на 2 мб список районов, поселений и всего вместе с координатами точек и разными admin_level
Вопрос:
Как мне отделить что тут относится к Москве, что к Новой Москве, а что к МО (если область не идёт в отдельном архиве osm)?
Что такое admin_level в параметрах объектов?
Как мне определить иерархическую вложенность поселений и районов в соответствующие административные округа Москвы?
В каком слое/архиве искать инфраструктуру муниципальных образований и структурирована-ли она? Чтобы можно было выделить отдельные виды объектов инфраструктуры, их названия и координаты?
Заранее большое спасибо всем кто поможет ответить на вопросы а не отправит читать страшные мануалы
конвертировать полученный файлик в нужный вам формат
Вариант 2
найти по вики, как обозначаются нужные вам объекты
загрузить нужные вам объекты через OverpassAPI http://overpass-turbo.eu/
2.1) чтобы выбрать школы: нажать кнопку “Помощник”
2.2) ввести amenity=school
2.3) нажать “Составить и запустить”
2.4) перейти на вкладку “данные”
Вопрос ещё в конвертации в удобный формат. Я находил в архивах областей, Москвы в частности бд в формате .dbf (так и не понял вся ли это база объектов в dbf и сделана-ли она просто для удобства пользователей кто не хочет забирать в другом формате).
Конвертация в мускул средством dbf2mysql Не удалась очевидно из-за отличаев в синтаксисе sql, что мускулу не понарвилось (к слову утилита в консоль никаких ошибок не отдаёт ), удалось сконвертировать данные в geojson через онлайн-сервис, который рекомендовали форумчане (ссылка в моем первом посте), но это же не дело… .
Наверняка же есть способы сконвертить из osm не только в json?
json в базу данных то я конечно разберу хоть на perle, но не хотелось бы ломиться в дверь, если она давным давно открыта.
Поставил себе пакет osmtools на линь, но osmconvert судя по всему перегоняет только в разные форматы Osm (osm5 и проч) и pdf
Доброго всем времени суток.
Вернулся к отложенной ранее задаче и у меня возникли проблемы с конвертацией данных из osm в базы данных mysql или postgresql.
Задачи теже - получить по фильтрам данные с координатами объектов инфраструктуры Москвы и Санкт-Петербурга и получить геоданные границ внутреннних районов и административно-территоральных делений.
Очень надеюсь на вашу помощь!
Что удалось сделать:
Получить даные геокоординат границ районов в Json, хотя было бы лучше получить их сразу в sql (mysql или postgresql). Границы скачад в формате shape и сконвертировал в json через онлайн-конвертер.
В принципе разобрать его в базу данных не сложно, но если есть готовые более красивые решения хотел бы о них узнать. Потому что как доставать границы районов из всего osm по москве я не понял из мануала.
Удалось получить osm файл инфраструктуры через osmfilter.
Не удалось:
Занести полученные данные в базу данных mysql или postgresql.
При попытке занесения osmosis (через него делал) ругался на отсутствие необходимымх связей в таблицах (в postgresql).
Конечная цель получить путем конвертации базу границ районов и инфраструктуры (школы сады, больницы рестораны) именно в Mysql чего требует задача разработки (нет и не будут ставить postgresql)/
Я поставил голый postgresql, выполнил дамп с базой данных из Вики во osmosis и при попытке импорта получившегося файла инфраструктуры mos_inf.osm osmosis ругается и данные никакие не заносит.
Добавлять в бд границы не пробовал или они только в формате json.
Также предпринимал попытку сделать все через osm2pgsql на что последний также ругается.
Прошу на ставить на правильный путь, указать на ошибки и на инструменты с которыми всё получилось бы решить задачу или помочь в ней. Заранее благодарен.
Чистый postgres тут не поможет, нужен postgres + postgis (волшебная надстройка, добавляющая типы и функции для работы с геоданными), на сайте postgis есть неплохая документация
Если же нужен mysql, полагаю, придется придумывать что-то свое. Файлики *.osm, на самом деле, обычный XML, можно обработать хоть перлом, хоть питоном.