как получить название и/или код страны по IP-адресу?
Вопрос
Извините за такой нубский вопрос, но как это сделать на C++?Мне нужно получить названия стран и их двухбуквенные или трехбуквенные коды ISO (или как они там называются), используя данный IP-адрес.Есть ли способ сделать это легко?
Я нашел только два способа — использовать библиотеку GeoIP C или загрузить бесплатную базу данных, но есть ли что-то более динамичное?Я имею в виду, есть ли бесплатный веб-сервис с актуальной базой данных, который я могу использовать для своих целей, используя Curl или что-то в этом роде?
Заранее спасибо.
Решение
MaxMind.com раскрывает набор веб-сервисы для геолокации.Они не бесплатны, но дешевы за поиск.
Один из моих клиентов использует службу поиска на уровне города, при этом каждый результат кэшируется на разумный период (из памяти, 2 или 3 недели), поскольку блоки IP-адресов не так часто меняют местоположение.
Приложение также подсчитывает количество фактических поисков для отправки уведомления администратору, когда количество оставшихся в подписке становится низким, поэтому его можно пополнить вручную.
Я также использую загружаемую базу данных в нескольких приложениях с запланированным процессом обновления, чтобы поддерживать ее в актуальном состоянии.
Другие советы
http://www.hostip.info предоставляет API.