↑ Все API
Адрес в ФИАС по идентификатору
⚠️ В большинстве случаев вам нужен не этот метод, а адрес по ФИАС-коду
Находит адрес в справочнике ФИАС по коду КЛАДР или ФИАС.
Как вызвать
Чтобы вызвать метод, зарегистрируйтесь и подтвердите почту.
Пример запроса:
Песочница
{ “query”: “9120b43f-2fae-4838-a144-85e43c2bfb29” }
cURL
curl -X POST -H "Content-Type: application/json" -H "Accept: application/json" -H "Authorization: Token ${API_KEY}" -d '{ "query": "9120b43f-2fae-4838-a144-85e43c2bfb29" }' https://suggestions.dadata.ru/suggestions/api/4_1/rs/findById/fias
.NET
// https://github.com/hflabs/dadata-csharp var token = "${API_KEY}"; var api = new SuggestClientAsync(token); var result = await api.FindFias("9120b43f-2fae-4838-a144-85e43c2bfb29"); var address = response.suggestions[0].data;
JavaScript
var url = "https://suggestions.dadata.ru/suggestions/api/4_1/rs/findById/fias"; var token = "${API_KEY}"; var query = "9120b43f-2fae-4838-a144-85e43c2bfb29"; var options = { method: "POST", mode: "cors", headers: { "Content-Type": "application/json", "Accept": "application/json", "Authorization": "Token " + token }, body: JSON.stringify({query: query}) } fetch(url, options) .then(response => response.text()) .then(result => console.log(result)) .catch(error => console.log("error", error));
PHP
// https://github.com/hflabs/dadata-php $token = "${API_KEY}"; $dadata = new DadataDadataClient($token, null); $result = $dadata->findById("fias", "9120b43f-2fae-4838-a144-85e43c2bfb29", 1);
Python
# https://github.com/hflabs/dadata-py from dadata import Dadata token = "${API_KEY}" dadata = Dadata(token) result = dadata.find_by_id("fias", "9120b43f-2fae-4838-a144-85e43c2bfb29")
По КЛАДР-коду ищет до улицы, по ФИАС-коду — до дома. По ФИАС-коду квартиры не ищет.
ФИАС-коды домов иногда меняются, а метод ищет только по актуальным кодам. Поэтому рекомендуем помимо ФИАС-кода дома сохранять адрес одной строкой — иначе не получится восстановить адрес, когда ФИАС-код изменится.
Что в ответе
Пример ответа
{ "suggestions": [ { "value": "г Москва, ул Снежная", "unrestricted_value": "129323, г Москва, ул Снежная", "data": { "postal_code": "129323", "region_fias_id": "0c5b2444-70a0-4932-980c-b4dc0d3f02b5", "region_kladr_id": "7700000000000", "region_with_type": "г Москва", "region_type": "г", "region_type_full": "город", "region": "Москва", "area_fias_id": null, "area_kladr_id": null, "area_with_type": null, "area_type": null, "area_type_full": null, "area": null, "city_fias_id": null, "city_kladr_id": null, "city_with_type": null, "city_type": null, "city_type_full": null, "city": null, "city_district_fias_id": null, "city_district_kladr_id": null, "city_district_with_type": null, "city_district_type": null, "city_district_type_full": null, "city_district": null, "settlement_fias_id": null, "settlement_kladr_id": null, "settlement_with_type": null, "settlement_type": null, "settlement_type_full": null, "settlement": null, "planning_structure_fias_id": null, "planning_structure_kladr_id": null, "planning_structure_with_type": null, "planning_structure_type": null, "planning_structure_type_full": null, "planning_structure": null, "street_fias_id": "9120b43f-2fae-4838-a144-85e43c2bfb29", "street_kladr_id": "77000000000268400", "street_with_type": "ул Снежная", "street_type": "ул", "street_type_full": "улица", "street": "Снежная", "house_fias_id": null, "house_kladr_id": null, "house_type": null, "house": null, "block": null, "building_type": null, "building": null, "fias_id": "9120b43f-2fae-4838-a144-85e43c2bfb29", "fias_code": null, "fias_level": "7", "fias_actuality_state": "0", "kladr_id": "77000000000268400", "capital_marker": "0", "okato": null, "oktmo": null, "cadastral_number": null, "tax_office": "7716", "tax_office_legal": "7716", "history_values": null, "source": null, "qc": null } } ] }
Название | Описание |
---|---|
value | Адрес одной строкой (как показывается в списке подсказок) |
unrestricted_value | Адрес одной строкой (полный, с индексом) |
data.postal_code | Индекс |
data.region_fias_id | Код ФИАС региона |
data.region_kladr_id | Код КЛАДР региона |
data.region_with_type | Регион с типом |
data.region_type | Тип региона (сокращенный) |
data.region_type_full | Тип региона |
data.region | Регион |
data.area_fias_id | Код ФИАС района в регионе |
data.area_kladr_id | Код КЛАДР района в регионе |
data.area_with_type | Район в регионе с типом |
data.area_type | Тип района в регионе (сокращенный) |
data.area_type_full | Тип района в регионе |
data.area | Район в регионе |
data.city_fias_id | Код ФИАС города |
data.city_kladr_id | Код КЛАДР города |
data.city_with_type | Город с типом |
data.city_type | Тип города (сокращенный) |
data.city_type_full | Тип города |
data.city | Город |
data.city_district_fias_id | Код ФИАС района города (заполняется, только если район есть в ФИАС) |
data.city_district_kladr_id | Код КЛАДР района города (не заполняется) |
data.city_district_with_type | Район города с типом |
data.city_district_type | Тип района города (сокращенный) |
data.city_district_type_full | Тип района города |
data.city_district | Район города |
data.settlement_fias_id | Код ФИАС нас. пункта |
data.settlement_kladr_id | Код КЛАДР нас. пункта |
data.settlement_with_type | Населенный пункт с типом |
data.settlement_type | Тип населенного пункта (сокращенный) |
data.settlement_type_full | Тип населенного пункта |
data.settlement | Населенный пункт |
data.planning_structure_fias_id | Код ФИАС план. структуры |
data.planning_structure_kladr_id | Код КЛАДР план. структуры |
data.planning_structure_with_type | Планировочная структура с типом |
data.planning_structure_type | Тип планировочной структуры (сокращенный) |
data.planning_structure_type_full | Тип планировочной структуры |
data.planning_structure | Планировочная структура |
data.street_fias_id | Код ФИАС улицы |
data.street_kladr_id | Код КЛАДР улицы |
data.street_with_type | Улица с типом |
data.street_type | Тип улицы (сокращенный) |
data.street_type_full | Тип улицы |
data.street | Улица |
data.house_fias_id | Код ФИАС дома |
data.house_kladr_id | Код КЛАДР дома |
data.house_type | Тип дома |
data.house | Дом |
data.block | Корпус |
data.building_type | Тип строения |
data.building | Строение |
data.cadastral_number | Кадастровый номер |
data.fias_id |
Код ФИАС:
|
data.fias_code | Иерархический код адреса в ФИАС (СС+РРР+ГГГ+ППП+СССС+УУУУ+ДДДД) |
data.fias_level | Уровень адреса по ФИАС:
1 — регион 3 — район 4 — город 5 — район города 6 — населенный пункт 7 — улица 8 — дом 65 — планировочная структура |
data.fias_actuality_state | Признак актуальности адреса в ФИАС
0 — актуальный 1–50 — переименован 51 — переподчинен 99 — удален |
data.kladr_id | Код КЛАДР |
data.capital_marker | Признак центра района или региона:
1 — центр района (Московская обл, Одинцовский р-н, г Одинцово) 2 — центр региона (Новосибирская обл, г Новосибирск) 3 — центр района и региона (Томская обл, г Томск) 4 — центральный район региона (Тюменская обл, Тюменский р-н) 0 — ничего из перечисленного (Московская обл, г Балашиха) |
data.okato | Код ОКАТО |
data.oktmo | Код ОКТМО |
data.tax_office | Код ИФНС для физических лиц |
data.tax_office_legal | Код ИФНС для организаций |
data.history_values[ ] | Список исторических названий объекта нижнего уровня. Если подсказка до улицы — это прошлые названия этой улицы, если до города — города. |
Не заполняются | |
data.source | |
data.qc |
Источник данных: Федеральная информационная адресная система (ФИАС) Налоговой службы.
Примеры вызова
-
PHP
-
PHP (одним файлом)
-
Python
-
R
-
Symfony
Ограничения
Длина запроса (параметр query
) — не более 300 символов.
Количество запросов в день — в соответствии с тарифным планом.
Максимальная частота запросов — 30 в секунду с одного IP-адреса.
Максимальная частота создания новых соединений — 60 в минуту с одного IP-адреса.
Стоимость
Бесплатно до 10 тысяч запросов в день. Больше — в составе годовой подписки.
- 2.2.1.1. Поиск по названию
- 2.2.1.2. Поиск по географическим координатам
- 2.2.1.3. Поиск по идентификатору объекта
- 2.2.1.4. Поиск по идентификатору сообщения о неточности на карте
- 2.2.1.5. Поиск по некорректному запросу
Чтобы найти на карте объект по названию, следует:
-
В строку поиска ввести запрос — название искомого объекта.
-
Под строкой поиска открывается список объектов, названия которых соответствуют запросу. Объекты располагаются в порядке удалённости от центра текущей карты:
В списке следует выбрать нужную запись. Карта автоматически центрируется на выбранном объекте (объект подсвечивается), масштаб увеличивается, открывается карточка объекта:
Чтобы найти на карте точку по её географическим координатам, введите их в строку поиска:
-
Координаты задаются в градусах с десятичной дробной частью после точки,
например 55.777044. Количество знаков после запятой — не более семи (такая точность обеспечивает позиционирование с точностью до 1 см).
-
Значения координат разделяются запятой или пробелом. Например:
Координаты можно задавать в любой последовательности — «широта, долгота» или «долгота, широта». При любой записи будут показаны два варианта ответа на запрос («ш-д» и «д-ш»). По умолчанию предлагаются варианты, соответствующие значениям «северная широта, восточная долгота».
Чтобы изменить выбор полушария, перед любым (из двух) значением координат следует поставить знак «минус» (дефис).
Чтобы изменить оба полушария, перед обоими значениями координат следует поставить знаки «минус» (дефис).
Любой объект Народной карты имеет уникальный числовой идентификатор (id), который можно использовать для поиска объекта на карте и для передачи информации о нём.
Чтобы узнать идентификатор (id) объекта, выделите объект на карте.
При этом в URL объекта вы увидите фрагмент «/object/NNNNN?z=», где «NNNNN» — идентификатор выделенного объекта (на рисунке это число 1489095561):
Идентификатор объекта можно использовать для сохранения или пересылки сведений о нём: если задать значение идентификатора в строке поиска, то оно будет распознано именно как идентификатор (id) объекта. Объект (и вся связанная с ним информация) будут найдены на карте:
Как любой другой объект Народной карты, сообщение о неточности на карте имеет уникальный числовой идентификатор (id), который можно использовать для поиска точки сообщения на карте и для передачи информации о нём.
Чтобы узнать идентификатор (id) объекта, выделите сообщение о неточности на карте.
При этом в URL объекта вы увидите фрагмент «feedback/tasks/NNNNN?z=», где «NNNNN» — идентификатор выделенного объекта (на рисунке это число 17434153):
Идентификатор сообщения о неточности можно использовать для сохранения или пересылки сведений о нём: если задать значение идентификатора в строке поиска, то оно будет распознано именно как идентификатор (id) сообщения о неточности (или другого объекта). Сообщение о неточности (и вся связанная с ним информация) будут найдены на карте:
Подробнее о работе с неточностями см. раздел 2.11. Сообщения и предположения о неточностях на карте.
Некорректный поисковый запрос автоматически редактируется в соответствии с имеющимися данными либо отображается сообщение «объект не найден».
При вводе запроса, содержащего несуществующий адрес, сервис показывает ближайший корректный адрес. Например, вместо несуществующего адреса в Москве «Тепличный переулок, 1» поиск показывает результат «Тепличный переулок, 3»:
Вычислить местоположение по IP возможно. Без запроса в полицию точность определения IP будет ограничена городом или провайдером, но это лучше, чем ничего. Вариантов, когда требуется вычислить местоположение и владельца IP много: найти взломщика, обидчика, спамера, читера, место размещения сервера и т.д.
IP адрес — это уникальный идентификатор в сети. Он бывает динамическим (меняется при каждом подключении) или статичным (закреплен за одним абонентом). Если человек сидит через прокси или VPN, реальный адрес будет скрыт.
Для удобства мы сделали бесплатный сервис, который показывает информацию о принадлежности IP адреса.
* Если не заполнить поле, будет показана информация по вашему IP.
Поиск через whois
В интернете полно сервисов whois, которые дают информацию по владельцам доменов и IP адресов.
Откройте сайт https://www.reg.ru/whois/ или https://2ip.ru/whois/ или зарубежный сервис https://who.is/. Вбейте адрес в каждый из сервисов, но разницы между ними почти нет. Если хотите сразу увидеть на карте, где находится IP — воспользуйтесь сервисом https://geoiptool.com/.
Введите в поле IP адрес и нажмите кнопку проверки.
Сервис выведет информацию о том, чей это IP адрес, страну, город, провайдер.
Как определить город человека без его IP
При общении с человеком где-нибудь в Скайпе или Телеграмме, вы не видите его IP адреса. Но определить город собеседника можно с помощью сервиса iplogger.ru.
На главной странице создайте один из вариантов логгера: невидимый или ссылку/картинку. Получите ссылку, при переходе по которой данные пользователя запишутся в статистику.
Если выбрать тип ссылка/картинка — при открытии будет сделана переадресация на указанный вами адрес, и человек ничего не заметит.
Если выбрать невидимый логгер, будет отображаться пустая страница. Её можно вставить даже где-нибудь на форуме для сбора статистики.
Скидываете сгенерированную ссылку собеседнику. Он переходит по ней и записывает свои данные в статистику: страну, город, провайдера, операционную систему, браузер. Чтобы увеличить шанс открытия ссылки, давайте сокращенный адрес (через goo.gl).
В серьезных случаях обратитесь в полицию. Они определят местоположение человека, сделав запрос провайдеру.
Зная местоположение человека, можно сделать тысячу полезных и не очень вещей: предложить правильный товар и заранее назвать цену доставки, показать ареал обитания покемонов, вывести локальные новости или посоветовать кафе неподалеку.
Местоположение — это важно.
Какие бывают способы геолокации
Существует 2 базовых способа геолокации, если исключить парсинг геометок фотографий и шпионаж со спутников.
Взять IP-адрес пользователя и по специальному справочнику найти город со страной.
Узнать местонахождение через HTML5 Geolocation API.
В этой статье мы рассказываем, как найти город пользователя, потому что такой точности обычно хватает. Го́рода достаточно интернет-магазинам, курьерским службам, новостным агрегаторам, сайтам с прогнозами погоды.
Город лучше определять по IP: способ всегда работает и не тревожит пользователя. А в геолокации по IP главное — найти справочник, который удобно подключается и без ошибок выдает город. Вторая часть статьи — об этом.
Как мы выбирали справочник IP-адресов
В сравнении справочников есть большая проблема: невозможно проверить, действительно ли прямо сейчас IP-адрес принадлежит городу, найденному справочником. Вчера IP относился к Питеру, а сегодня это Нижний Новгород.
Поэтому мы сравнивали справочники по таким критериям:
- Стоимость.
- Частота обновлений.
- Количество диапазонов IP-адресов для России.
- Количество адресов «на местности», или полнота. Чтобы измерить полноту, мы прогнали все адреса из каждого справочника через API cтандартизации «Дадаты». Сервис привел адреса к одному формату и разобрал по типам: регион, район, город. Эти стандартизованные адреса мы и посчитали.
- Формат: насколько справочник удобно использовать.
- Библиотеки и интеграции с популярными фреймворками.
- Что можно вытащить из базы помимо города.
- Чей Крым (политика политикой, а бизнесу работать надо).
- Детализация по населенным пунктам. Чтобы узнать ее, мы прогнали 35000 рандомных уникальных IP-адресов через каждый справочник. Потом сравнили, сколько уникальных городов разрезолвил каждый справочник.
Мы рассматривали такие справочники:
- IPGeoBase,
- SypexGEO,
- MaxMind Lite,
- ip2ruscity.
IPGeoBase
Стоимость. Бесплатный.
Обновления. Каждый день.
Пулы IP-адресов в России. 43751 пул, это первое место.
Полнота. 728 объектов:
- 3 региона (Москва, Санкт-Петербург, Севастополь);
- 2 района;
- 601 город;
- 113 прочих населенных пунктов.
Третье место по этому параметру.
Формат базы. Tab-separated текстовые файлы. В одном файле города с ID, в другом — залинкованные на них диапазоны IP.
Кодировка в файлах — боль под названием Windows-1251. Хорошо, что есть iconv — легким движением руки мы получили UTF-8:
iconv -f WINDOWS-1251 -t UTF-8 cities.txt > cities_utf8.txt
База медленная (еще бы, это текстовый файл) — обход 35000 адресов занял несколько минут.
Библиотеки. Есть готовые под Perl, Ruby и Python, но самая новая — от 2013 года. За 4 года Трамп стал президентом США, вышел PHP 7, появился миллион JS-фреймворков, но ни одну из библиотек под этот справочник так и не обновили.
Чтобы портировать библиотеку под Python 3, понадобился час.
Что можно вытащить из базы.
('RU', 'Санкт-Петербург', 'Санкт-Петербург', ‘59.939037’, ‘30.315784’)
Крым. Наш.
Детализация. На выборке в 35000 адресов нашлось 372 разных населенных пункта.
Это третье место с небольшим отставанием от второго.
Вердикт. IPGeoBase — это набор городов и диапазонов IP-адресов, который завернут в .txt-файлы с tab-separated структурой. Обновляется достаточно часто.
Минусы — библиотеки очаковских времен, да и текстовый файл — не самое удобное решение для доступа к данным.
Повидавший жизнь, но до сих пор летающий Ту-154.
SypexGEO
Стоимость. Бесплатный, распространяется по BSD-лицензии.
Обновления. Пару раз в месяц.
Пулы IP-адресов в России. Всего диапазонов 1696337, но неясно, сколько из них относятся к России: данные закопаны в справочнике. По этому параметру место не присудить.
Полнота. 832 объекта:
- 2 региона,
- 1 район,
- 630 городов,
- 196 прочих населенных пунктов.
Второе место. Неплохо!
Формат. Странный .dat-файл со структурой на смещениях. Внутренности быстро расковырять не получилось — создатель на форуме говорит, что конвертера для перевода базы в человекопонятный вид нет.
Как работать со справочником, если не через библиотеку — неясно. Для любопытных есть спецификация на сайте справочника.
Скорость хорошая: обход 35000 адресов занял несколько секунд.
Библиотеки. Есть для Python, PHP Yii, PHP Laravel, Java, Ruby. Обновлялись 2-3 года назад. Еще есть интеграция с Symfony и плагин для WordPress.
Что можно вытащить из базы:
{'city':
{'id': 498817,
'lat': 59.93863,
'lon': 30.31413,
'name_ru': 'Санкт-Петербург',
'name_en': 'Saint Petersburg'},
'region':
{'id': 536203,
'name_ru': 'Санкт-Петербург',
'name_en': 'Sankt-Peterburg',
'iso': 'RU-SPE'},
'country':
{'id': 185,
'iso': 'RU',
'lat': 60.0,
'lon': 100.0,
'name_ru': 'Россия',
'name_en': 'Russia'},
'region': 'Санкт-Петербург',
'tz': ''"}
Крым. Не наш.
Детализация. На выборке в 35000 адресов нашлось 400 разных населенных пунктов.
Это второе место.
Вердикт. Очень подкупает скоростью, смещения — сила. Авторы говорят, что специально оптимизировали базу для высоких нагрузок.
По наполнению и точности похожа на IPGeoBase — здесь чуть больше объектов, 10% адресов резолвятся по-другому.
База полностью открыта.
К сожалению, не резолвит Крым в Россию.
Вертолет Black Hawk — классно летает, но не всем подойдет.
MaxMind Lite
Стоимость. Бесплатный с лицензией Creative Commons. Есть платная версия, которая стоит $1470 в год.
Обновления. Первый вторник каждого месяца (прям как паспортный стол).
Пулы IP-адресов в России. 91432. Если убрать IP-адреса, которые резолвятся в Россию без города, — 42822. Это второе место.
Полнота. 1392 объекта:
- 61 регион,
- 819 городов,
- 497 населенных пунктов.
Первое место с большим отрывом!
Формат базы. Собственный .mmdb. Города и диапазоны IP-адресов доступны также в .csv-файлах, которые лежат в архиве с базой.
У базы есть версии с разной точностью: до страны, до города, а также справочник ASN (уникальных номеров интернет-провайдеров). Есть также база для IPv6-адресов.
Библиотеки. Здесь полный порядок — на «Гитхабе» лежит несколько десятков библиотек для работы с базой.
Что можно вытащить из базы. Выдача суперподробная и мультиязычная. MaxMind отдает интересный параметр accuracy_radius — точность радиуса координат в километрах.
{
"city": {
"geoname_id": 498817,
"names": {
"de": "Sankt Petersburg",
"en": "Saint Petersburg",
"es": "San Petersburgo",
"fr": "Saint-Pétersbourg",
"ja": "サンクトペテルブルク",
"pt-BR": "São Petersburgo",
"ru": "Санкт-Петербург",
"zh-CN": "圣彼得堡"
}
},
"continent": {
"code": "EU",
"geoname_id": 6255148,
"names": {
"de": "Europa",
"en": "Europe",
"es": "Europa",
"fr": "Europe",
"ja": "ヨーロッパ",
"pt-BR": "Europa",
"ru": "Европа",
"zh-CN": "欧洲"
}
},
"country": {
"geoname_id": 2017370,
"iso_code": "RU",
"names": {
"de": "Russland",
"en": "Russia",
"es": "Rusia",
"fr": "Russie",
"ja": "ロシア",
"pt-BR": "Rússia",
"ru": "Россия",
"zh-CN": "俄罗斯"
}
},
"location": {
"accuracy_radius": 20,
"latitude": 59.9321,
"longitude": 30.1968,
"time_zone": "Europe/Moscow"
},
"postal": {
"code": "191023"
},
"registered_country": {
"geoname_id": 2017370,
"iso_code": "RU",
"names": {
"de": "Russland",
"en": "Russia",
"es": "Rusia",
"fr": "Russie",
"ja": "ロシア",
"pt-BR": "Rússia",
"ru": "Россия",
"zh-CN": "俄罗斯"
}
},
"subdivisions": [
{
"geoname_id": 536203,
"iso_code": "SPE",
"names": {
"en": "St.-Petersburg",
"es": "San Petersburgo",
"fr": "Léningrad",
"ru": "Санкт-Петербург"
}
}
],
"traits": {
"ip_address": "109.205.249.212"
}
}
Крым. Не наш.
Детализация. На выборке в 35000 адресов справочник нашел 749 адресных объектов.
Это первое место.
Но есть нюансы:
- в 13% случаев база не сумела определить город. Поняла только, что он находится в РФ, и разрезолвила страну;
- создатели намекают, что определение адреса по IP — не самая сильная сторона бесплатной версии. Для контроля точности они предлагают мониторить accuracy_radius.
Вердикт. Подробнейшая база с шикарной выдачей.
В 50% случаев результаты расходятся с предыдущими двумя базами — точность и детализация у MaxMind Lite выше.
Но есть принципиальные минусы — частота обновлений и Крым.
Навороченный космический корабль, который обновляется раз в месяц и не считает Крым российским.
ip2ruscity
Стоимость. Платный, стоит 5000 рублей в год.
Обновления. Раз в месяц.
Пулы IP-адресов в России. 34907 пул, третье место.
Полнота. 486 объектов:
- 4 региона,
- 454 города,
- 28 населенных пунктов.
Четвертое место, которое сильно слабее третьего.
Формат базы. Tab-separated текстовые файлы либо SQL-файлы. В них — города, регионы, диапазоны IP-адресов. Есть еще телефонные коды городов, но почему-то они доступны только в MySQL-формате. В общем, как в программе партии «Неуверенная Россия» — будет средне (не прямо круто, так, нормально).
Начало и конец диапазонов IP-адресов для экономии места завернуты в uint-формат. Их придется самостоятельно привести к виду IP-адресов.
Не особо удобно, но жить можно. На Python делается просто:
import socket, struct
socket.inet_ntoa(struct.pack('!I', 84098303))
'5.3.60.255'
Библиотеки. Не нашлось ни одной :(. Пришлось накостылить свой авангардный биндинг для исследования, код публиковать не буду.
У сервиса недавно появилось API. Через него отдают:
- город,
- регион,
- координаты по Google Maps и «Яндекс.Картам».
API относительно бесплатное — не больше 20 запросов в сутки с одного IP-адреса. В платной версии дают 3000 запросов в час.
Что можно вытащить из базы.
{'city': 'Санкт-Петербург',
'region': 'Санкт-Петербург',
'region_id': '78'}
Если использовать MySQL-формат базы, возвращается еще телефонный код города.
Крым. Наш.
Детализация. На выборке в 35000 адресов нашлось 273 населенных пункта. Это последнее место.
Вердикт. Вроде и недорого, но за деньги могло быть и получше.
Винтовой ATR-72 авиакомпании Air Serbia.
Подводя итоги (как первый канал)
Бесплатная MaxMind Lite практически по всем параметрам быстрее, выше и сильнее остальных. Тем не менее, у нее 2 важных минуса — обновляется всего раз в месяц и не считает Крым российским.
Мы в «Дадате» не спали ночами и думали, какой справочник выбрать для своего API геолокации. В итоге взяли за основу IPGeoBase и навернули сверху всяких плюсов.
По сравнению с «голым» IPGeoBase «Дадата» удобнее.
Обновляется автоматически. Сервис обновляет справочник по мере выхода новой версии, вспоминать об этом не придется.
Библиотеки не нужны. Справочник доступен по API, к нему подключится любая HTTP-библиотека. Запрос очень простой: отправляешь только IP-адрес и токен, который дают при регистрации на DaData.ru.
curl -X GET
-H "Accept: application/json"
-H "Authorization: Token ${yoursecrettoken}"
https://suggestions.dadata.ru/suggestions/api/4_1/rs/detectAddressByIp?ip=213.180.193.3
Сервис отдает куда больше данных, чем «голый» справочник. Помимо названия найденного объекта это:
- детализация, до которой удалось разрезолвить IP: страна, регион, район, город, населенный пункт;
- типы и названия найденного и всех вышестоящих адресных объектов (например, города → района → региона → страны);
- коды КЛАДР и ФИАС для найденного и всех вышестоящих адресных объектов (региона, района и т. д.);
- признак центра района, региона, района и региона;
- коды ИФНС, ОКАТО и ОКТМО.
Всего в выдаче для IP несколько десятков полей, на DaData.ru есть полная спецификация.
Мы превратили рабочий, но некрашеный Ту-154 в Airbus А-380.
В экономе возим бесплатно — к API можно сделать 10000 запросов в сутки, просто зарегистрировавшись. Если нужно больше, это будет стоить от 4000 рублей в год.
Социальную сеть ВКонтакте ежемесячно посещают миллионы человек, среди них не только жители России и стран СНГ, но и иностранцы из дальнего зарубежья. Для кого-то ВК – просто сайт, а для кого-то – кладезь бесценной информации. Если знать, как ее использовать, можно выведать о человеке очень многое. Мы расскажем, как найти и установить личность пользователя ВК, зная лишь его ID.
Содержание
- Что можно узнать по ID ВКонтакте
- Как вычислить человека через сайт VK
- Узнаем максимум со страницы юзера ВК
- Получение достоверных данных о местоположении владельца ID
- Как вычислить человека в ВК со смартфона
- Поиск информации о местоположении пользователя с телефона
Что можно узнать по ID ВКонтакте
ID – это номер, который присваивается аккаунту пользователя в момент регистрации в соцсети ВКонтакте. Он содержит от 1 до 9 цифр, неизменен и уникален для каждого юзера. Зная ID, можно получить о владельце аккаунта следующую информацию:
- фамилию, имя, отчество;
- возраст;
- город рождения и проживания;
- семейное положение;
- список родственников и членов семьи, круг общения;
- интересы, мировоззрение, жизненную позицию;
- литературные, музыкальные, игровые и иные предпочтения;
- данные об образовании и военной службе;
- места работы в хронологическом порядке;
- личные видео и фото с указанием места их создания;
- список групп, в которых состоит пользователь;
- личный сайт и другие контактные данные.
Конечно, не все юзеры ВК заполняют профиль полностью и далеко не факт, что указанные данные достоверны. К сожалению (а может, к счастью), администрация VK не требует подтверждения личности и не настаивает на подлинности информации, если она выглядит правдоподобно и не нарушает закон.
Как вычислить человека через сайт VK
Первое, что можно выяснить по известному ID, это кому принадлежит страница. Для этого достаточно в адресной строке браузера, которая выглядит как https://vk.com/id**** , заменить звездочки номером ID и нажать кнопку перехода.
Вы получите ровно столько данных, сколько владелец ID пожелал показать. ВКонтакте позволяет отображать разный объем сведений друзьям, другим пользователям социальной сети и незарегистрированным посетителям.
Некоторые люди скрывают свои страницы полностью:
Рассмотрим пример. На скриншоте ниже №1 показано то, что видит человек из списка друзей владельца аккаунта, а №2 – незарегистрированный пользователь. На втором скриншоте отсутствуют блоки «Друзья», «Видеозаписи», «Карьера», «Образование», «Военная служба», «Мировоззрения», «Предпочтения» и «Увлечения».
Узнаем максимум со страницы юзера ВК
Основные данные о человеке хранится на самом видном месте – в верхней части его личного профиля. Если вы пока не знакомы с соцсетью ВКонтакте, инструкция ниже поможет вам разобраться.
- Зарегистрируйтесь в соцсети и войдите в свою учетную запись.
- Вставьте в адресную строку браузера ссылку https://vk.com/id**** , где **** номер ID интересующего пользователя. Вот, как выглядит тестовая страница:
- Чтобы узнать больше, нажмите на ссылку «Показать подробную информацию».
Если вы не получили нужные сведения:
- Предложите владельцу аккаунта дружбу. Этого может быть достаточно, чтобы сервис ВКонтакте показал вам всё, что есть на его странице.
- Если первый вариант не сработал, найдите предлог и подружитесь с кем—нибудь из друзей интересующей персоны. Друзья друзей тоже могут видеть больше, чем все остальные.
Получение достоверных данных о местоположении владельца ID
Как вы уже знаете, пользователи VK могут указывать в профиле неправду. Но есть информация, которую подделать довольно сложно. Например, геотеги – сведения о месте создания фотографий, которые юзер разместил на своей странице.
Современные смартфоны добавляют геотеги всегда, если владелец не отключил эту опцию в настройках. Однако их может не быть, если снимки обработаны в фоторедакторах.
Чтобы не выискивать фотографии с геотегами вручную, нажмите кнопку «Показать на карте»:
Откроется окно с картой (1) и общим списком фотографий с геотегами (2). Расположение кругов на карте указывает место создания фото. По ним вы можете узнать, где человек побывал, где, например, учился и где живет сейчас. При нажатии на кружок откроется перечень снимков из выбранного места.
Чтобы изменить масштаб карты, наведите на неё курсор и вращайте колесико мыши.
Для примера откроем любую из найденных фотографий. После нажатия на неё появится окно, где справа вверху указано местоположение съемки. Если кликнуть по этому адресу, мы снова попадем на карту.
Местоположение можно определить и по косвенным признакам. Например, найти в списке групп пользователя те, которые относятся к определенной местности. Можно изучить профили друзей. Но, в отличие от геотегов, эти методы неточны, требуют времени и длительного анализа.
И все-таки собрать достоверную информацию о юзерах ВКонтакте довольно сложно. Например, социальные сети скрывают данные об IP—адресах своих посетителей. Чтобы получить чей—либо IP, придется идти на хитрости, например, замотивировать человека отправить вам электронное письмо и воспользоваться специальными сервисами. Или заманить на свой сайт, если он у вас есть.
Как вычислить человека в ВК со смартфона
В мобильном приложении VK все делается почти так же, как в браузере. Сперва войдите в свою учетную запись. Далее действуйте по инструкции:
- Нажмите на кнопку в виде лупы внизу экрана.
- Введите id**** в графу «Поиск», где **** – номер ID.
- Перейдите во вкладку «Люди».
- Нажмите на имя или фотографию найденного пользователя.
Вы получите столько же информации, сколько получили бы в браузерной версии сервиса. Отличается лишь её представление. Например, семейное положение скрыто в меню «Подробная информация» (1), список друзей открывается по нажатию на их число (2). Дополнительные данные вы получите, нажав кнопку «Подробная информация».
Мобильный клиент ВКонтакте отмечает кликабельные надписи синим цветом.
Поиск информации о местоположении пользователя с телефона
К сожалению, ВК не дает просматривать геотеги с мобильных версий социальной сети. Но это ограничение можно обойти, выдав смартфон за полноценный ПК. Для этого вам понадобится браузер, например, Google Chrome, Firefox или US Browser.
Далее:
- Откройте социальную сеть ВКонтакте в браузере.
- Введите логин-пароль для входа в учетную запись.
- Откройте ссылку https://vk.com/id****, где **** – ID.
- Нажмите на кнопку в правом верхнем углу экрана.
- Прокрутите страницу вниз и нажмите «Версия для компьютера».
- Выберите свой браузер.
Про то, что делать дальше, мы рассказали выше.
В Интернете можно найти немало приложений и сервисов, которые предлагают просмотр скрытых данных юзеров ВКонтакте. Но не стоит поддаваться соблазну, так как большинство из них мошеннические и предназначены для кражи личных сведений тех, кто клюнет на удочку. Кроме того, сбор конфиденциальной информации без согласия ее владельца противоречит законодательству.
Мы же предлагаем вам полностью безопасные и совершенно законные способы узнать о человеке то, чего он не скрывает. Берите на вооружение и пользуйтесь!