Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OneStringPlugin - результаты отличаются от kladr-api.ru (менее релевантны) #40

Closed
Feodorov opened this issue Mar 5, 2018 · 1 comment

Comments

@Feodorov
Copy link

Feodorov commented Mar 5, 2018

Здравствуйте.

Прежде всего хотел поблагодарить за отличный сервис! Спасибо за проделанную работу и за возможность использовать ее в своих проектах.

Обнаружил различия между версией http://kladr-api.ru/api.php и версией в репозитории касательно поиска. kladr-api.ru выдает релевантные результаты:

curl 'http://kladr-api.ru/api.php?limit=1&withParents=1&oneString=1&cityId=7800000000000&query=Невский проспект' | jq
{
  "searchContext": {
    "oneString": "1",
    "cityId": "7800000000000",
    "query": "Невский проспект",
    "limit": 1
  },
  "result": [
    {
      "id": "78000000000088500",
      "name": "Невский",
      "zip": null,
      "type": "Проспект",
      "typeShort": "пр-кт",
      "okato": null,
      "contentType": "street",
      "fullName": "Санкт-Петербург Город, Город Санкт-Петербург, Проспект Невский"
    }
  ]
}

Ограничим поиск Санкт-Петербургом, ищем Невский проспект - результат отличный!

Далее попробуем сделать запрос для сервера, развернутого из текущего репозитория:

curl 'http://.../public/index.php?limit=1&withParents=1&oneString=1&cityId=7800000000000&query=Невский проспект' | jq
{
  "searchContext": {
    "oneString": "1",
    "cityId": "7800000000000",
    "query": "Невский проспект",
    "limit": 1
  },
  "result": [
    {
      "id": "6201000000000",
      "name": "Александро-Невский",
      "zip": "391240",
      "type": "Район",
      "typeShort": "р-н",
      "okato": "61220000000",
      "contentType": "district",
      "fullName": "Рязанская Область, Александро-Невский Район"
    }
  ]
}

Результат не очень релевантный.

Насколько я понимаю, на kladr-api.ru есть какие-то очень хорошие правки поиска в сфинксе. В обоих случаях в сфинксе есть Санкт-Петербург Город, Город Санкт-Петербург, Проспект Невский, но с версией кода в репозитории запрос вида @fullname "Невский проспект*" @cityid 7800000000000 не находит релевантное значение. Видимо, влияет порядок слов или что-то подобное?

PS. Еще обнаружил, что в версии на kladr-api.ru проиндексированы адреса с домами (Челябинская Область, Саткинский Район, Город Бакал, Улица Ленина, 18), чего также нет в текущей версии кода:

curl 'http://kladr-api.ru/api.php?limit=1&oneString=1&query=г.Бакал, ул.Ленина, 18' | jq
{
  "searchContext": {
    "oneString": "1",
    "query": "г.Бакал, ул.Ленина, 18",
    "limit": 1
  },
  "result": [
    {
      "id": "7401700100000150001",
      "name": "18",
      "zip": 456900,
      "type": "дом",
      "typeShort": "д",
      "okato": "75249503000",
      "contentType": "building",
      "fullName": "Челябинская Область, Саткинский Район, Город Бакал, Улица Ленина, 18"
    }
  ]
}

Не подскажите, как можно подправить поиск, чтобы получить результаты, сравнимые с kladr-api.ru?

@Feodorov
Copy link
Author

Feodorov commented Mar 5, 2018

Нашел причину - я недостаточно хорошо сконфигурировал индекс. Взял конфиг из докер-образа hub.docker.com/r/garakh/kladr/ - все заработало как нужно.

@Feodorov Feodorov closed this as completed Mar 5, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant