Клуб API Карт

Яндекс API + Google Ajax Search

Пост в архиве.

Идея проста:

  • Ищем в гугле (уточняя запрос почтовыми адресами из видимого участка карты)
  • Отображаем результаты на Яндекс карте

В результате должен получится универсальный поиск по карте, где базой является весь итернет (ухты!)

Ну сказно - сделано. Яндекс как раз предоставил АПИ карт где прилично отображлся Киев, и я без промедлений сел програмировать.


И получилось!

Давайте попробуем. Предположим нам ночью в незнакомом районе захотелось в аптеку (ну мало ли).

Заходим на сайт, находим нужный район (это Киев, Дружбы Народов)

Вводим в поиске

Жмём на кнопку. Ожидаем. Ожидаем. Ожидаем. (всё не просто поиск ведётся в риалтайме )))

И о чудо!

Циферки означают релевантность запроса по отношению к адресу (чем больше циферка тем точнее результат)

При нажатии на иконку видим балун с результатми из гугла.

И там действительно есть аптека!

Пока осилили только Киев. Точность поиска напрямую зависит от масштаба карты.

Конечно в реализации всё оказалось намного сложнее чем в теории. Поиск происходит не очень быстро и нагружает как клиента так и сервер. Особенно тяжело на мелких масштабах когда в видимом участке карты много улиц. Очень много проблем с названиями улиц, они повторяются, и пишут их как хотят.

Но самой тяжелой задачей оказалось тестировать сервис. Как проверить правду нашло или нет? Нужно очень хорошо знать город. Да и результат гугла меняется во времени и зависит от браузера. (вы не поверите но в Chrome выдаёт больше результатов чем в IE))

Поэтому нам нужны смельчаки

  • кто не побоится потестить сервис
  • кто знает Киев
  • кому интересна тема мешапов с использованием Яндекс API

Вот приглашение для 10ти человек http://maplos.com/invite/ac0069d

Конечно багов много, но мы стараемся. И будем очень признательны за критику.

 

4 комментария
крайне интересный проект
Только, к стыду своему, я не понял как он работает :( Определяет какие улицы в viewport и колдует их к запросу в гугл? Но как тогда определяются координаты балунов, или все улицы-дома уже в базе?
Грубо говоря да, запрос в гугл именно такой. Потом скрипт парсит почтовый адрес (улицу дом) из страниц результатов. Ну а зная почтовый адрес, узнаёт координату и ставит точку. Задумка очень простая ))
Спасибо тем кто зарегистрировался. Было очень мило если бы вы оставили фидбек тут, или нам на почту. Кому интересно но не очень, вот маленький (2:37)скринкаст http://www.youtube.com/watch?v=hm3sA6Pyvl8 Хотелось чтобы взглянул кто-то из разработчиков карт, и посоветовал как ускорить работу со значками. Профилировщик Firebug показал что половину времени выполнения скриптов приходится на функцию в которой меняется цвет и текст значков.