Поиск стран по городам

Содержание
  1. База стран и городов
  2. Страны — country
  3. Области — area
  4. Города — city
  5. Районы области — rajon
  6. Районы города — rajon_city
  7. Список POLYGON — координаты окружающих район в городе, город, область, регион
  8. Соответствие IP и страны/города — geo__base
  9. Диапазоны IP адресов и их whois — geo__ip
  10. Телефонные операторы, в т.ч. сотовые — oper
  11. Данные об MNP переносах — phone
  12. Телефонные номера, коды и регион привязки — telcod
  13. Синонимы, альтернативные названия и названия на иностранных языках — sinonim
  14. API данных о городах, областях, регионах, странах
  15. Получение частей света
  16. Получение всех стран или список стран указанной части света
  17. Получение всех областей(регионов, штатов) указанной страны
  18. Получение всех районов указанной области(региона, штата)
  19. Получение всех городов указанного района внутри области
  20. Получение всех городов указанной области(региона, штата) без деления на районы
  21. Получение полного списка населенных пунктов (городов) страны
  22. Информация о городе по id
  23. Получение полного списка районов населенного пункта (города)
  24. Информация о стране по коду или названию
  25. Информация о регионе(штате,области) по коду
  26. API получения списка городов (населенных пунктов) по части названия города
  27. API получения ближайших городов(населенных пунктов) от заданного
  28. API получения ближайших городов (населенных пунктов) от заданных координат
  29. API получения города по GPS — координатам
  30. API расчета расстояния между городами
  31. Получить названия населенных пунктов, областей, регионов на разных языках, переименования и синонимы
  32. Поиск по названию в странах, областях, районах, больших городах
  33. Ограничение

База стран и городов

Самая полная собираемая и обновляемая база данных стран и городов с административным делением на районы, области, регионы с географическими координатами. База доступна для скачивания и посредством API запросов. База стран и городов дополнительно содержит информацию о временной зоне в данном городе, о телефонном номере. Для большинства стран доступна информация об автомобильном номере, соответствующем данному региону. В базе поле capital содержит информацию о городе, который является соответственно или столица страны или областной или районный центр. В настоящий момент база содержит:

  • Стран: 254
      Список стран, содержащих города
    • Соединенные Штаты [201 412]
    • Россия [147 805]
    • Китай [62 636]
    • Индонезия [54 412]
    • Германия [49 164]
    • Франция [44 254]
    • Италия [33 482]
    • Мексика [33 362]
    • Филиппины [27 951]
    • Испания [24 791]
    • Нигер [24 041]
    • Украина [22 308]
    • Перу [20 032]
    • Пакистан [19 046]
    • Таиланд [18 715]
    • Соединенное Королевство [18 177]
    • Мьянма [17 309]
    • Бразилия [17 073]
    • Сьерра-Леоне [14 650]
    • Беларусь [14 211]
    • Индия [13 435]
    • Мадагаскар [12 440]
    • и другие.
  • Областей(регионов,штатов): 8 427
  • Районов(внутри областей): 56 547
  • Городов(населенных пунктов): 1 359 750
  • Районов в крупных городах: 1 125
  • Диапазонов IP адресов: 18 228
  • IP-адресов: 2 583 419 526
    Скрипты, входящие в комплект автоматически обновляют диапазоны IP адресов.
Читайте также:  Первые лица стран мира

Заполнение координат городов:

  • По большим городам из 16613 нет координат у 3 (0% нет)
  • По крупнейшим из 6597 нет координат у 0 (0% нет)

Заполнение телефонных кодов городов:

  • По большим городам из 16613 нет кодов у 9919 (59% нет)
  • По крупнейшим из 6597 нет кодов у 2426 (36% нет)

Заполнение почтовых индексов городов:

  • По большим городам из 16613 нет индексов у 6800 (40% нет)
  • По крупнейшим из 6597 нет индексов у 1291 (19% нет)

Структура таблиц базы данных:

Страны — country

Поле Тип Null По умолчанию Комментарии
name varchar(64) Нет Название страны
fullname varchar(64) Нет Полное название страны
english varchar(64) Нет Англоязычное название
id char(2) Нет Двухсимвольный код страны;
country_code3 char(3) Нет Трехсимвольный код страны
iso char(3) Нет Код по ISO
telcod char(4) Нет Телефонный код страны
location char(10) Да NULL Часть света
capital int(10) Нет Код города — столицы страны, ссылка на таблицу city

Области — area

Поле Тип Null По умолчанию Комментарии
id int(10) Нет
name varchar(64) Нет Название
okrug varchar(64) Нет Название округа в который входит данный регион
autocod varchar(21) Нет Автомобильный код
capital int(10) Нет Областной центр, ссылка на таблицу city
english varchar(64) Нет
iso varchar(3) Нет
country char(2) Нет

Города — city

Поле Тип Null По умолчанию Комментарии
id int(10) Нет
name varchar(64) Нет
area int(10) Нет
telcod varchar(24) Нет Телефонный код города
latitude float(10,6) Да NULL широта
longitude float(10,6) Да NULL долгота
time_zone float(6,2) Да NULL Временная зона, отклонение времени от GMT(UTC)
english varchar(64) Нет Английское название или транскрипция
rajon int(10) Нет 0
country char(2) Нет Двухсимвольный код страны
sound char(4) Нет A000 функция soundex от транслита name для быстрого поиска по созвучию
level tinyint(4) Нет 0 1-Областной центр или город с населением более 1 млн.человек,
2-Районный центр или город с населением более 100тыс.человек,
3-Город с населением более 15тыс.человек,
4-Деревня/станица/хутор с населением менее 15тыс.человек
ISO varchar(3) Нет
vid tinyint(3) Нет 0 1-город, 2-поселок, 3-село, 4-деревня, 5-станица, 6-хутор
post varchar(256) Нет 0 Почтовый код (Индекс)

Районы области — rajon

Поле Тип Null По умолчанию Комментарии
id int(10) Нет
name varchar(64) Нет
area int(10) Нет
country char(2) Нет
capital int(10) Нет Код районного центра
english varchar(64) Нет

Районы города — rajon_city

Поле Тип Null По умолчанию Комментарии
id int(10) Нет
name varchar(128) Нет Название района в городе
city int(10) Нет 0 Код города
english varchar(64) Нет
parent int(10) Нет 0 Ссылка на родительский район города

Список POLYGON — координаты окружающих район в городе, город, область, регион

Данный объект пока в режиме тестирования

Соответствие IP и страны/города — geo__base

Поле Тип Null По умолчанию Комментарии
long_ip1 bigint(20) Нет Начало диапазона
long_ip2` bigint(20) Нет Конец диапазона
country char(2) Нет Код страны
city varchar(64) Нет 0 Код города
upd datetime Нет актуальность
oper int(10) unsigned Нет 0 Код оператора по таблице oper

Диапазоны IP адресов и их whois — geo__ip

Поле Тип Null По умолчанию Комментарии
long_ip1 bigint(20) Нет Начало диапазона ip адресов
long_ip2 bigint(20) Нет Конец диапазона ip адресов
whois text Нет данные Whois
upd datetime Нет актуальность

Телефонные операторы, в т.ч. сотовые — oper

Поле Тип Null По умолчанию Комментарии
id int(10) unsigned Нет
name varchar(512 Нет
mobile tinyint(3) unsigned Нет 0 1 — мобильный оператора
mvno int(10) unsigned Нет 0 1- Виртуальный оператор
country char(2) Нет
mnc int(3) unsigned Нет 0
brand varchar(64) Нет Бренд оператора
url varchar(128) Нет сайт оператора
deleted timestamp Да дата удаления

Данные об MNP переносах — phone

Поле Тип Null По умолчанию Комментарии
phone varchar(15) Нет Номер телефона
oper int(10) unsigned Да дата удаления
upd date Да дата добавления
country char(2) Нет Страна
mnc int(3) Нет Код MNC оператора
region int(10) unsigned Да NULL Регион, если не указано, брать по def коду
oper_from int(11) Да NULL откуда перешел, если не указано, брать по def коду

Телефонные номера, коды и регион привязки — telcod

Код региона’,

Поле Тип Null По умолчанию Комментарии
okrug int(10) Нет Регион, округ по таблице area
city int(10) unsigned Нет Код города
oper int(10) unsigned Нет Код оператора
deffrom varchar(15) Нет Начало диапазона
defto varchar(15) Нет Конец диапазона
country char(2) Нет Страна

Синонимы, альтернативные названия и названия на иностранных языках — sinonim

Поле Тип Null По умолчанию Комментарии
id int(11) Нет
name varchar(255) Нет Текущее актуальное название
sinonim varchar(255) Нет Альтернативное название или перевод
tbl varchar(64) Нет Таблица(city, area, . ) или пусто для всех
lang int(11) Нет 0 Цифровой код языка по таблице lang (https://ru.wikipedia.org/wiki/Коды_языков)
tbl_id int(11) Нет 0 id в таблице tbl при переименовании

Имена полей когда соответствуют имени таблицы — это id-код по этой таблице

Также база данных, по вашему желанию, может содержать дополнительные таблицы: Выделенные диапазоны IP адресов по городам, телефонные номерные емкости, закрепленные за странами и городами, и другие. Тестовая база и структура таблиц в формате SQL здесь.

Чтобы не возникло желания спарсить базу стран и городов, заранее информирую, что при превышении количества запросов с одного IP, Ваш IP-адрес блокируется на сутки. Сайт через большинство бесплатных прокси серверов недоступен.

Источник

API данных о городах, областях, регионах, странах

Набор API для получения информации обо всех городах, областях, регионах, странах.

Получение частей света

Структура API запроса для получения всех частей света:

Получение всех стран или список стран указанной части света

Структура API запроса для получения всех областей(регионов, штатов) указанной страны:

Для получения всех стран Европы:
http://htmlweb.ru/geo/api.php?location=Европа&json&api_key=API_KEY_из_профиля

Для получения всех стран передайте пустое location.

Для получения только кодов и названий, передайте параметр short.

Получение всех областей(регионов, штатов) указанной страны

Структура API запроса для получения всех областей(регионов, штатов) указанной страны:

Например, для получения всех областей и округов России:

Для получения одной записи «Республика Крым» в формате sql: http://htmlweb.ru/geo/api.php?country=ru&id=115&sql&api_key=API_KEY_из_профиля

Также вы можете задать альтернативные форматы xml, html или sql:

Кодовая страница по умолчанию для sql формата utf-8. Для выгрузки в формате windows-1251 добавьте параметр &charset=windows-1251

Если формат не указан, формируется список option для select-запроса

Получение всех районов указанной области(региона, штата)

Структура API запроса для получения всех областей(регионов, штатов) указанной страны:

КОД_ОБЛАСТИ — поле id в ответе на запрос «Список всех областей»

Например, для получения всех областей и округов Амурской области России:

Получение всех городов указанного района внутри области

Структура API запроса для получения всех городов указанного района внутри области:

КОД_РАЙОНА — поле id в ответе на запрос «Список всех районов области»

Получение всех городов указанной области(региона, штата) без деления на районы

Структура API запроса для получения всех городов :

КОД_ОБЛАСТИ — поле id в ответе на запрос «Список всех областей»

Например, для получения всех городов Амурской области России:

Для включения в выборку только крупных городов добавьте параметр level=2. Если хотите получить только крупнейшие города, добавьте параметр level=1.

Для получения ответа в формате MySql используйте параметр sql[=имя_таблицы]:

Например, для получения всех городов Амурской области России:

Получение полного списка населенных пунктов (городов) страны

Структура API запроса для получения всех городов :

Входные параметры:

    country — страна. Может быть задана кодом или названием
  • area — регион, если передан, то выводятся только населенные пункты этого региона
  • rajon — район, если передан, то выводятся только населенные пункты этого района
  • level — размер населенного пункта (0-4) Для включения в выборку только крупных городов добавьте параметр level=2. Если хотите получить только крупнейшие города, добавьте параметр level=1
  • p, perpage — с какой страницы и сколько на странице
  • Информация о городе по id

    Для получения информации о конкретном городе по id в формате json выполните следующий запрос:

    В кратком формате:

    Для получения строки в формате SQL для сохранения в базу выполните следующий запрос:

    или в старом формате:

    Для получения краткой информации о конкретном городе по id в формате json выполните следующий запрос:

    Для получения строки в формате SQL для сохранения в базу с указанием списка полей, выполните следующий запрос:

    Получение полного списка районов населенного пункта (города)

    Структура API запроса для получения всех районов города:

    Входные параметры:

    • city — код города

    Пример для Ростова-на-Дону:

    Для поиска города по части названия удобно использовать поиск. Пример для Ростова-на-Дону:

    Информация о стране по коду или названию

    Для получения информации о стране по id в формате json выполните следующий запрос:

    Для получения краткой информации о стране по названию в формате json выполните следующий запрос:

    Информация о регионе(штате,области) по коду

    Для получения информации о стране по id в формате json выполните следующий запрос:

    API получения списка городов (населенных пунктов) по части названия города

    Структура API запроса для получения списка городов по части названия:

    Вариант запроса для получения готового html кода для вставки на страницу в

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

    Структура API запроса для получения ближайших населенных пунктов:

    Например, для Москвы:

    Вариант запроса для получения готового html кода для вставки на страницу:

    Дополнительные необязательные параметры:
    length=50 — расстояние в пределах которого осуществляется поиск, км
    level=1 — только крупнейшие города
    level=2 — большие и крупнейшие города
    p=N — с какой страницы выдавать список городов
    perpage=30 — сколько городов выводить в списке (за каждые 50 населенных пунктов списывается один запрос, подробнее. )

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

    Структура API запроса для получения ближайших населенных пунктов:

    API получения города по GPS — координатам

    Структура запроса для получения ближайшего города по GPS-координатам:

    API расчета расстояния между городами

    Структура API запроса для расчета расстояния между городами:

    Например, для расчета расстояния между Москвой и Ростовом-на-Дону:

    Вариант запроса для получения готового html кода для вставки на страницу:

    Получить названия населенных пунктов, областей, регионов на разных языках, переименования и синонимы

    Структура API запроса для получения всех городов :

    • sinonim — для какого названия требуется список синонимов
    • lang2obj — заменить в выборке поле lang на объект, содержащий подробную информацию о языке. При передаче этого параметра дополнительно спишется ещё один запрос

    Поиск по названию в странах, областях, районах, больших городах

    Структура API запроса для поиска:

    • search — Страна или ISO код страны или название столицы или город в стране
    • tbl = country | area | rajon | city — искать только в странах, областях, районах, городах
    • country — искать только в указанной стране
    • capital2obj — заменить в выборке поле capital на объект, содержащий подробную информацию о столице, иначе возвращается только код столицы. Спишется +1 запрос
    • area2obj — заменить в выборке поле area на объект, содержащий подробную информацию о регионе, иначе возвращается только код региона.

    Кроме стандартного набора форматов вывода (json, xml, api), поддерживает формат html — возвращает список ссылок в html-формате. Для этого добавьте в запрос параметр &html, например: https://htmlweb.ru/api/geo/search/Москва?html .

    • country — список стран
    • area — список регионов
    • rajon — список районов
    • city — список населенных пунктов

    Ограничение: возвращается не более 50 позиций в каждом элементе выборки

    Ограничение

    При расчете лимита за один запрос принимается один запрос с выборкой не более 50 записей. Тарификация производится за каждый запрос!

    Обратите внимание, по умолчанию выводится с 1-ой по 50-ую записи. Если Вы хотите вывести следующие 50 записей укажите дополнительный параметр:

    Если Вы хотите выводить не по 50, а другое кол-во укажите параметр:

    Источник

    Оцените статью