Цель: сделать разметку всех отделений НП на OSM менее убогим (посмотрите наглядно насколько оно убого по ссылке ниже). Потыкать (лучше в Chrome, если сильно тупит придётся некоторые слои отключать) Указать автору на ошибки синхронизации Код (на Dart-е )
По умолчанию на карте видны отделения НП/OSM (данные не очень свежие) и стрелками показано как они будут объединяться. Если на отделении НП стоит точка, это значит, что его не с чем объединять. Все необъединённые отделения OSM будут удалены.
На данный момент практически готов алгоритм объединения. Написание кода для выполнения конкретных запросов к OSM API будет позже. Мне ещё надо решить как я буду помечать сомнительные отделения (fixme, наверное, и комментарий), какие теги я буду указывать. Но это уже следующий этап. Сейчас хочется максимально улучшить алгоритм для более корректного объединения.
Будущее (если лень не возобладает):
Автоматическая синхронизация через промежутки времени.
Синхронизация всего, что легко доступно (McDonald’s, отделения/терминалы/банкоматы/почтоматы ПриватБанка…).
А за яким критерієм визначається, що існуюча точка/лінія відповідає запису з реєстру НП?
Якщо знайдено відповідність, координати яких даних мають вищий пріоритет: OSM чи НП?
Они там по крайней мере должны быть. Посмотрите на мою карту. Из ~2к отделений на OSM есть только 575. Множество отделений были перенесены и упразднены. Полезность разметки отделений на OSM на данный момент стремится к нулю.
Хоть это никак не относится к задаче, отвечу… Потому что так легче проверять. Можно сразу посмотреть на карту Украины и увидеть где есть или может быть проблема с синхронизацией.
Точный день не скажу. Около 2 месяцев.
Никак. Если очень надо - могу запилить фичу. Но пока я спокойно обходился просто указанием нас. пункта + область + номер отделений/я для личных заметок.
Хочу всё полностью автоматически. Скрипт должен работать по принципу “не навреди”. Если вдруг он не сможет понять что к чему, то только тогда должен вмешаться человек.
Я не верю в валидаторы. Есть какая-то статистика по тому следят ли люди за результатами валидаторов и исправляют ли ошибки на которые они указывают? На сколько оперативно исправляют? Опять же нужно учесть значимость валидатора. Неверные границы страны более важны, чем какое-то 75-ое отделение Новой Почты с неправильной позицией.
Але тут треба брати до уваги, що скоріш за все, якщо навіть координати були отримані за допомогою GSP-приймача, вони матимуть певну похибку. А якщо вони отримали координати, скажімо скориставшись гео-кодінгом Яндекса, то тут треба покладатись на точність Яндекса, але такі дані в ОСМ використовувати вже неможна.
Я не думаю, що Нова пошта буде опиратись додаванню/уточненню їх відділень в ОСМ, але зважаючи на таке ^ (див. цитату) було б непогано запитати в них дозволу на імпорт.
+1.
Поэтому я не советовал бы заливать в OSM точки с координатами, полученными от API Новой Почты. Максимум, что с ними можно делать - использовать для уточнения и поддержки в актуальном состоянии базы OSM.
+1.
Как минимум, надо им написать с вопросом о том, откуда были взяты координаты отделений. Можно представиться, мол, “Пишу от имени сообщества OpenStreetMap Украина…” Я мог бы написать, только… куда? Нашёл на сайте только один e-mail - support@novaposhta.ua.
Поэтому при внесении любой информации с сайта https://novaposhta.ua/ нужно давать ссылку на него в теге source=* пакета правок.
Я знаю как некоторые члены сообщества призерают ботов. Видят покрывшиеся мхом данные, но продолжают призерать. Я в этом отношении более либерален и считаю, что если это можно безопасно автоматизировать, то стоит попробовать.
Так и есть, особенно в маленьких нас. пунктах. Там вообще просто в центре стоит точка, без привязки к зданию. В более крупных нас. пунктах (от 3 отделений и больше) точность гораздо лучше. Конечно из-за того, что НП размечает не на OSM, то отделения могут находиться где-то рядом. Я считаю так: лучше, чтобы пользователь пришёл и обнаружил, что отделение находится с другой стороны здания или в соседнем здании, чем пришёл и узнал, что отделения там вообще уже 2 года как нет. Я в шапке уже написал, что буду помечать отделения, в точности расположений которых есть сомнения. Сообщество потом может уточнять их местоположение, как и в случае с валидаторами. Приложения могут подсказывать пользователю, что не стоит надеяться на точность этой POI в интерфейсе.
Опять же, если такое отделение уже есть на OSM, то оно будет в приоритете, т.е. останется с корректным адресом.
Вы это знаете наверняка или предполагаете? Мне кажется, что тут вопрос сложнее, чем “не мапте по Google Maps”. Я не силён в юр. вопросах, но мы полностью придерживаемся правил НП. Взяли данные, оставили ссылку (хотя не понятно относится ли это к API) на их ресурс. Сомневаюсь, что нам необходимо знать откуда они берут каждый кусочек своих данных и проверять всю цепочку лицензиатов (где бы их ещё найти?). Более того я даже не знаю скажут ли они нам это. Мы получаем от них просто 2 сырых координаты. Могу ещё сказать, что во время проверки работы алгоритма я находил несколько отделений, которые были размечены далеко от нужного здания, хотя такой адрес на Яндекс.Картах был.
Если координаты были получены из Яндекс.Карт, то абсолютно неважно, через сколько “посредников” они прошли: вносить их в OSM нельзя. Никак и никогда.
И ещё. Есть в этом мире данные, источник которых неизвестен. Согласно правилам OSM, их нельзя вносить в базу. А можно вносить только те данные, источник которых точно известен и дал своё разрешение.
Поэтому нужно обязательно узнать у Новой Почты, откуда были взяты координаты, и можно ли эти координаты (а заодно и информацию об отделениях) вносить в OSM.
Если НП откажется рассказывать нам откуда берёт координаты или скажет, что берёт их с Яндекс.Карт, то единственный вариант - юзать геокодинг самим. Ну ок, можно попробовать что из этого получится. Где-то точность улучшится, но во многих случаях отделение будет стоять в середине улицы :(. Ещё можно попросить их, чтобы они всех сотрудников заставили включить GPS и добавить эти координаты в API. Но вероятность, что такая крупная компания сделает это для нас стремится к нулю. Посмотрим что они ответят.
А если НП не согласится дать нам разрешение на перенос отделений, то это будет печально. Ибо карты OSM мне нравятся, а вот неактуальные и куцые данные - нет.
Посмотрите тему про УкрПочту. Там используется валидация, геокодинг nominatim и ручное внесение.
По мере внесения добавляются/переименовываются улицы, здания. Единожды внеся хотя бы ref, можно будет следить. Иначе - никак.
Если НП берёт координаты с Яндекса и добавить в API GPS координаты не согласятся, то придётся делать полуавтоматическую синхронизацию. Первый раз вручную разметить всё, что Nomatim не осилил, а последующие разы опять же если Nomatim в недоумении, то тоже помогать ему ручками.
Ну, во-первых для всех точек, добавленных Nominatim’ом стоит ставить fixme=position.
На начальном этапе полуавтоматическое добавление самый верный способ.
Судя по API НП у точек есть свой ‘Ref’. Стоит узнать как часто он меняется и если достаточно устойчив,
можно воткнуть кго в OSM для уже созданных точек в качестве какого-нибудь левого тэга типа ref:novaposhta=‘…’
Тогда уже по нему в дальнейшем можно будет синхронизировать базы (время работы, удаленные/перенесенные отделения).