place-index что интересного рядом

place-index отвечает на вопрос «что интересного рядом с этой точкой и насколько это известно». Своих мест он не придумывает: сводит открытые источники — Википедию, Wikidata и Викигид, а также сайты-подборки «что посмотреть в городе» — в один индекс и выбирает из тысяч объектов вокруг те, о которых читают и которые советуют посмотреть.

статей Википедии с координатами
объектов с классом «место» из Wikidata
советов Викигида по статьям
мест советуют сайты-подборки по городам
индекс собран

Что умеет

Источники

ИсточникЧто даётВ индексеДанные наЛицензия
Русская Википедия, дампы geo_tags и page статьи с координатами, тип объекта (город, река, достопримечательность) и размер CC BY-SA 4.0
Просмотры Википедии за месяц сколько раз статью прочитали люди (без ботов), с компьютера и телефона — мера известности CC0
Wikidata, классы объектов (P31) чем объект является: музей, крепость, компания, вокзал — отсюда метка «место / не место» CC0
Русский Викигид что советуют посмотреть и сделать в городе, с описанием и координатами CC BY-SA 4.0
Сайты-подборки «что посмотреть в городе»: поиск через свой SearXNG, до 8 сайтов на город сколько независимых сайтов советуют место — голос; перепечатки одного текста считаются один раз. Названия мест со страниц выделяет языковая модель, со статьями их сопоставляет сервис тексты сайтов не хранятся в индексе — только голоса
OpenStreetMap подложка карты в веб-поиске; в индекс не входит всегда свежая ODbL

Места, которые советуют сайты, но статьи о них в Википедии нет, пока не показываются: у них нет координат.

Как читать выдачу

Известность

Число просмотров статьи Википедии за месяц. Грубо, но честно: Кремль читают больше, чем бюст на соседней улице. Порог «от N просмотров» отсекает малоизвестное.

Советуют сайты

«Советуют 5 сайтов» — место есть в подборках «что посмотреть» на пяти разных сайтах. Порядок в выдаче — по большему из двух: просмотров или голосов, где голос весит как 400 просмотров в месяц. Поэтому местный музей, который советуют все путеводители, стоит рядом с известными местами, а не теряется за порогом просмотров.

Метка у места

Обновление

Индекс пересобирается сам раз в квартал — 5 января, апреля, июля и октября: свежие дампы, просмотры за прошлый месяц, классы для новых статей. Если что-то пошло не так, прежний индекс остаётся на месте, а итог приходит уведомлением.

API

Всё, что показывает веб-поиск, доступно по HTTP в JSON. Полное описание с формой для запросов — Swagger.

ЗапросЧто возвращаетПример
GET /wiki/nearизвестные места вокруг точки: lat, lon, radius_km, min_views, min_web_votes, sort, sights_only, limit; у места — web_votes Нижний, 10 км
GET /voyage/cityсоветы Викигида по городу: city, kinds Дербент
GET /resolveопознать место по названию рядом с точкой: name, lat, lon Печёрский монастырь
GET /suggestподсказка точки по названию, с городом рядом: q, lat, lon псков
GET /searchвсе совпадения по названию во всём индексе: q, limit башня шухова
POST /matchсопоставить до 500 своих точек со статьями: по тегам OSM wikipedia/wikidata или по названию рядом; неоднозначные не выбираются в Swagger
GET /statsобъёмы по источникам и даты данных stats
GET /healthиндекс на месте и согласован; 503 — нет health

Чего пока не умеет

Код — GitLab tigranav/place-index, задача — INF-384.