You are not logged in.

Announcement

*** NOTICE: forum.openstreetmap.org is being retired. Please request a category for your community in the new ones as soon as possible using this process, which will allow you to propose your community moderators.
Please create new topics on the new site at community.openstreetmap.org. We expect the migration of data will take a few weeks, you can follow its progress here.***

#1 2011-11-07 12:33:08

ErshKUS
Member
From: Калиниград
Registered: 2010-12-27
Posts: 803

Поисковик с русским лицом

Ну вот наконец я добился сборки индексной таблицы для всей России, в общей сложности это v0.5 smile

http://openstreetmap.ru

Дата последнего обновления поиска: 10.09.2012

Что сейчас:
– адресный поиск по нестрогому порядку слов (от регионов до домов)
– поиск идет только по России
– поиск как почтовых адресов, так и POI
– интерфейс будет перерабатываться полностью (уже идет работа Hind и Felis Pimeja), поэтому его косяки не интересны
– группировка нарезанных улиц
– понимание addr:housenumber="5 К2 С3"
– понимание addr:street2 и addr2:, addr3:
– понимание г., город, ул., улица, д. .... мкр.,  заработало (проблема с кодировкой на серваке)
– для определения принадлежности улиц и домов обязательна граница города/поселка
– обновление вручную
– поиск от текущего положения (текущий город, район, область)

Почему что то не ищется (любой пункт можно изменить, по обоснованной причине):
!! если у членов отношения нет outer/inner, то он игнорируется, и если он был границей - то граница получается поломанной и исключается, а в месте с ней автоматически и все вложенные объекты !!
– границами города/поселка считаются place (отношение/замкнутая линия) с наличием name или place_name
– улица не должна выходить за пределы города
– пока place=city/town - город, place=village/hamlet - поселок

Что планируется, в зачаточном состоянии:
– онлайн обновление данных
поиск от текущего положения (расстояние уже вычисляется, то пока не придумал как коэффициент правильно сделать)
поиск по POI
life-поиск или подсказка при наборе поисковой строки
– пытаться выдавать наиболее точно то, что хотел пользователь wink
зум исходя из размера объекта
– поддержка suburb

Поскольку это еще тестовая версия то:
– выдает техническую информацию, а именно: id-идентификатор позиции в индексной базе, weight-вес релевантности, чем больше тем точнее

Описание api поиска по произвольной строке:
* Пример запроса: openstreetmap.ru/api/search?q=12&lat=54.75&lon=21.4219&cnt=20&callback='cb1'
– q - строка поискового запроса
– stype - строка указывающая тип поиска: addr - только адресный поиск, poi - только пои искать, all - addr+poi. По умолчанию all
– lat - широта центра карты. По умолчанию 0
– lon - долгота центра карты. По умолчанию 0
– cnt - максимальное количество ответов. По умолчанию 12
– asis - при 1 выводить как есть, без экранирования спецсимволов html в выводе. По умолчанию 0
– callback - оборачивание ответа в функцию callback
* Ответ в формате json:
– find - булевое значение удачности поиска
– search - что искалось
– id - внутренний id в поисковой таблице, может меняться при обновлении
– osm_id_n, osm_id_w, osm_id_r - id объектов osm, массив.
– lat, lon - координаты центра объекта
– addr_type_id - номер типа объекта: 2-области, края, республики,... (admin_level=4); 3-районы,... (admin_level=6); 4-города,... (place=town/city); 5-деревни, села,... (place=village/hamlet); 6-улицы (highway=*); 7-дома (addr:housenumber)
– display_name - выводимое имя
– this_poi - 1 или 0 указывающее нашлось ли пои или адресный объект
* При запросе с lat/lon не равных нулю, поиск идет от заданного местоположения.


В общем тестируйте...

На данный момент уже выявлено:
дублирование Санкт-Петербург
пустые адреса
падение на строке типа "5/2"
дублирование записей, если граница обозначена линией и есть точка внутри её
не находит объекты с множеством тире в имени
– обработка сокращений в названиях улиц «Большая» до «Б.», «Красный» до «Кр.» ссылка
поиск дома как "9А", так и "9 А"
– более не точный поиск, если ничего не нашлось ссылка

P.S. просьба, если не нашлось, давать ссылки то, что должно было найтись

Last edited by ErshKUS (2013-02-16 14:55:59)


Ты никогда не спутаешь пути: ты стоишь...
И, может, так и нужно, но как тогда узнать, что там выше крыш?   (Lumen, Лабиринт)

Offline

#2 2011-11-07 12:38:02

siberiano
Moderator
From: Novosibirsk
Registered: 2010-02-25
Posts: 1,006
Website

Re: Поисковик с русским лицом

Супер! Всё, что искал, нашлось!

Есть только проблема с альтернативными названиями. В Красноярске есть "проспект имени газеты Красноярский рабочий". Её так полностью в поиске не напишешь, обычно называют "Красноярский рабочий" или "красраб". Куда эти альтернативные названия записать, чтобы индексировались и по ним можно было искать?

Offline

#3 2011-11-07 12:43:50

ErshKUS
Member
From: Калиниград
Registered: 2010-12-27
Posts: 803

Re: Поисковик с русским лицом

siberiano wrote:

Супер! Всё, что искал, нашлось!

Есть только проблема с альтернативными названиями. В Красноярске есть "проспект имени газеты Красноярский рабочий". Её так полностью в поиске не напишешь, обычно называют "Красноярский рабочий" или "красраб". Куда эти альтернативные названия записать, чтобы индексировались и по ним можно было искать?

по идее alt_name  http://wiki.openstreetmap.org/wiki/RU:Key:name , но мой поисковик пока их не нюхает.


Ты никогда не спутаешь пути: ты стоишь...
И, может, так и нужно, но как тогда узнать, что там выше крыш?   (Lumen, Лабиринт)

Offline

#4 2011-11-07 12:50:03

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Поисковик с русским лицом

Да, всё запрошенное замечательно находит.

Но в идеале находить надо то, что искали. То есть когда ищем улицу - не надо вываливать все дома по этой улице

Offline

#5 2011-11-07 12:53:03

ErshKUS
Member
From: Калиниград
Registered: 2010-12-27
Posts: 803

Re: Поисковик с русским лицом

liosha wrote:

Да, всё запрошенное замечательно находит.

Но в идеале находить надо то, что искали. То есть когда ищем улицу - не надо вываливать все дома по этой улице

Это да, но еще не придумал как точно научить поисковик этому


Ты никогда не спутаешь пути: ты стоишь...
И, может, так и нужно, но как тогда узнать, что там выше крыш?   (Lumen, Лабиринт)

Offline

#6 2011-11-07 13:07:59

dkiselev
Member
Registered: 2010-02-09
Posts: 3,364

Re: Поисковик с русским лицом

Круто, релевантность всегда адекватно считается
К примеру "Екатеринбург 8 марта 1" результат ...дом 37/1 выше чем ...дом 1 хорошо что нашлись оба, но  хотелось бы чтобы ... дом 1 был выше.

Кстати если ввести  "8 марта 1 Екатеринбург" то ...дом 1 будет первым.

Last edited by dkiselev (2011-11-07 13:09:16)


mail: dkiselev@osm.me      skype: dmitry.v.kiselev
Open Street Maps are supreme! Exterminate all map forms! Exterminate! Exterminate!

Offline

#7 2011-11-07 13:12:19

dkiselev
Member
Registered: 2010-02-09
Posts: 3,364

Re: Поисковик с русским лицом

Еще из хотелок - при построении индекса генерить алиасы для имен улиц с римскими числами "22 Партсъезда 11 Екатеринбург" и "Екатеринбург 22 Партсъезда дом 11" не дали результатов т.к. улица заведена как "XXII Партсъезда"


mail: dkiselev@osm.me      skype: dmitry.v.kiselev
Open Street Maps are supreme! Exterminate all map forms! Exterminate! Exterminate!

Offline

#8 2011-11-07 13:16:50

Eriw
Member
From: Новоуральск
Registered: 2011-10-29
Posts: 9

Re: Поисковик с русским лицом

Отлично ищет smile Ни одного промаха...

Offline

#9 2011-11-07 13:17:43

dkiselev
Member
Registered: 2010-02-09
Posts: 3,364

Re: Поисковик с русским лицом

Еще хотелка - обработка сокращений типа К. Маркса - если адрес будет копипастится, то попадание инициала в запрос очень вероятный случай.

Ничего что я его на заковыристые случаи проверяю? Так то поисковик очень хорош!

Last edited by dkiselev (2011-11-07 13:19:11)


mail: dkiselev@osm.me      skype: dmitry.v.kiselev
Open Street Maps are supreme! Exterminate all map forms! Exterminate! Exterminate!

Offline

#10 2011-11-07 13:20:49

Eriw
Member
From: Новоуральск
Registered: 2011-10-29
Posts: 9

Re: Поисковик с русским лицом

Вот чего нашла: есть 15-й микрорайон. Годно было бы в поиске указывать 15 мкр.

Offline

#11 2011-11-07 13:33:43

Alexandr Zeinalov
Member
From: New-Peredelkino, Moscow, RU
Registered: 2009-08-26
Posts: 1,699
Website

Re: Поисковик с русским лицом

Варшавка ни в Варшавскую улицу, ни в Варшавское шоссе не превращаются. Правда, гугл этого тоже не умеет, но Яндекс-то справляется...

old_name не находит.

"москва центральная" находит одну улицу
"москва внуково центральная" и "москва толстопальцево центральная" не находит вообще ничего
"москва заветная" ничего не находит
"внуково заветная" находит

"барятино" первые три результата без названия (наиболее релевантные!), причём второй и третий - одно и то же (граница и точка)

"москва" находит много точек на севере города smile

по запросу "московский" самым релевантным результатом является Московская улица в Печоре, причём точка не имеет адреса, где же город Московский - вообще непонятно

"новгород" - находит Нижний и в нём же посёлок Мостотряд

"киров" - ...

короче, есть над чем работать

Offline

#12 2011-11-07 13:42:24

ErshKUS
Member
From: Калиниград
Registered: 2010-12-27
Posts: 803

Re: Поисковик с русским лицом

да я уже тоже обнаружил выпавшие адреса, разбираюсь что с ними не так

они не должны были попасть в поиск, это я поторопился и забыл добавить еще в одно место условие.
а не должны были попасть, т.к. не определилась их отношение к региону

Last edited by ErshKUS (2011-11-07 13:49:24)


Ты никогда не спутаешь пути: ты стоишь...
И, может, так и нужно, но как тогда узнать, что там выше крыш?   (Lumen, Лабиринт)

Offline

#13 2011-11-07 13:56:13

akks
Member
From: Ufa
Registered: 2010-06-11
Posts: 1,728

Re: Поисковик с русским лицом

Спасибо, уже впечатляет!

Надеюсь, со временем можно будет искать не только дома smile Вводя "Уфа", человек всё же рассчитывает увидеть город и речку, а не список всех адресов)
Впечатляет почти полная независимость  от порядка слов (типа "ят сена сун уфа").

Offline

#14 2011-11-07 13:59:28

Zverik
Moderator
From: Tallinn
Registered: 2010-10-14
Posts: 5,695
Website

Re: Поисковик с русским лицом

akks wrote:

Впечатляет почти полная независимость  от порядка слов (типа "ят сена сун уфа").

Специально открыл страницу, чтобы посмотреть, что это такое :)
И нашёл небольшой недочёт: слишком мелкий зум.


ШТОСМ | josm.ru | обо мне | удалёнка зло

Offline

#15 2011-11-07 14:05:23

luiswoo
Member
Registered: 2010-09-11
Posts: 1,598

Re: Поисковик с русским лицом

3-я линия 27 Ростов-на-Дону - не находит, стандартный находит и выдаёт первым вариантом.

Offline

#16 2011-11-07 14:05:41

ErshKUS
Member
From: Калиниград
Registered: 2010-12-27
Posts: 803

Re: Поисковик с русским лицом

Zverik wrote:
akks wrote:

Впечатляет почти полная независимость  от порядка слов (типа "ят сена сун уфа").

Специально открыл страницу, чтобы посмотреть, что это такое smile
И нашёл небольшой недочёт: слишком мелкий зум.

Зум пока не исходит от размера данных, просто жестко указано


Ты никогда не спутаешь пути: ты стоишь...
И, может, так и нужно, но как тогда узнать, что там выше крыш?   (Lumen, Лабиринт)

Offline

#17 2011-11-07 14:12:55

ErshKUS
Member
From: Калиниград
Registered: 2010-12-27
Posts: 803

Re: Поисковик с русским лицом

luiswoo wrote:

3-я линия 27 Ростов-на-Дону - не находит, стандартный находит и выдаёт первым вариантом.

можно ссылку на объект в осм? или на место на карте


Ты никогда не спутаешь пути: ты стоишь...
И, может, так и нужно, но как тогда узнать, что там выше крыш?   (Lumen, Лабиринт)

Offline

#18 2011-11-07 14:13:51

luiswoo
Member
Registered: 2010-09-11
Posts: 1,598

Re: Поисковик с русским лицом

Так и должно быть или это только у меня так выезжает...
0_731b0_6f45f14d_L.jpg

Offline

#19 2011-11-07 14:16:37

luiswoo
Member
Registered: 2010-09-11
Posts: 1,598

Re: Поисковик с русским лицом

ErshKUS wrote:
luiswoo wrote:

3-я линия 27 Ростов-на-Дону - не находит, стандартный находит и выдаёт первым вариантом.

можно ссылку на объект в осм? или на место на карте

На объект не получится - там интерполяция, ссылка на место

Offline

#20 2011-11-07 14:29:43

Fortress
Member
From: Russia, Saint-Petersburg
Registered: 2009-07-09
Posts: 1,109

Re: Поисковик с русским лицом

Чета мой дом не ищет.. "Металлострой, Полевая ул., 20"

Offline

#21 2011-11-07 14:31:42

Zkir
Member
From: Хрустальная Москва
Registered: 2009-02-21
Posts: 6,110

Re: Поисковик с русским лицом

Проспект Мира  - вообще ничего не ищет. Строка поиска очищается и все.

UPD:
На IE9 вообще не работает

Last edited by Zkir (2011-11-07 14:33:34)


Истинные слова не не приятны, приятные слова не истинны.
True words are unpleasant; pleasant words are untrue.

Offline

#22 2011-11-07 14:42:02

ErshKUS
Member
From: Калиниград
Registered: 2010-12-27
Posts: 803

Re: Поисковик с русским лицом

luiswoo wrote:
ErshKUS wrote:
luiswoo wrote:

3-я линия 27 Ростов-на-Дону - не находит, стандартный находит и выдаёт первым вариантом.

можно ссылку на объект в осм? или на место на карте

На объект не получится - там интерполяция, ссылка на место

с интерполяцией поисковик не умеет работать, даже пока не знаю, как ей научить его.

P.S.

Скорее всего и не буду, уж сильно эта интерполяция относительна, да и сделать её не просто. Есть задачи важнее.

Last edited by ErshKUS (2011-11-07 14:56:45)


Ты никогда не спутаешь пути: ты стоишь...
И, может, так и нужно, но как тогда узнать, что там выше крыш?   (Lumen, Лабиринт)

Offline

#23 2011-11-07 14:45:22

ErshKUS
Member
From: Калиниград
Registered: 2010-12-27
Posts: 803

Re: Поисковик с русским лицом

Fortress wrote:

Чета мой дом не ищет.. "Металлострой, Полевая ул., 20"

Санкт-Петербург, город Металлострой ?


Ты никогда не спутаешь пути: ты стоишь...
И, может, так и нужно, но как тогда узнать, что там выше крыш?   (Lumen, Лабиринт)

Offline

#24 2011-11-07 14:48:59

ErshKUS
Member
From: Калиниград
Registered: 2010-12-27
Posts: 803

Re: Поисковик с русским лицом

Zkir wrote:

Проспект Мира  - вообще ничего не ищет. Строка поиска очищается и все.

Какой браузер? IE9 ?

Last edited by ErshKUS (2011-11-07 14:55:12)


Ты никогда не спутаешь пути: ты стоишь...
И, может, так и нужно, но как тогда узнать, что там выше крыш?   (Lumen, Лабиринт)

Offline

#25 2011-11-07 15:16:21

Zkir
Member
From: Хрустальная Москва
Registered: 2009-02-21
Posts: 6,110

Re: Поисковик с русским лицом

Да, IE9.

Еще глюк.
"Большая внуковская улица" - показывает только служебную информацию.


Истинные слова не не приятны, приятные слова не истинны.
True words are unpleasant; pleasant words are untrue.

Offline

Board footer

Powered by FluxBB