6

Как я могу найти местоположение, такое как город / штат или страна с IP-адреса?

Есть ли для этого модуль ruby gem или python? Или, если есть веб-сайт, который имеет API.

4 ответа4

6

Вы можете использовать API http://ipinfo.io для этого:

$ curl ipinfo.io/8.8.8.8
{
  "ip": "8.8.8.8",
  "hostname": "google-public-dns-a.google.com",
  "city": "Mountain View",
  "region": "California",
  "country": "US",
  "loc": "37.3860,-122.0838",
  "org": "AS15169 Google Inc.",
  "postal": "94040"
}

Если вас интересует только одно поле, вы можете добавить его к URL-адресу, чтобы получить его в виде простого текста:

$ curl ipinfo.io/8.8.8.8/loc
37.3860,-122.0838

$ curl ipinfo.io/8.8.8.8/country
US

Если вы ищете модуль Python, https://github.com/juanpabloaj/pyipinfo представляет собой простую оболочку или http://geocoder.readthedocs.org/en/stable/ более полнофункциональный и имеет встроенную поддержку для ipinfo.io и другие провайдеры.

1

Вы можете пойти сюда ...Любая такая услуга является приблизительной оценкой ЛЮБОГО IP-адреса, но это то, что вы ищете.

http://www.geobytes.com/iplocator.htm (просто введите «IP-адрес для поиска» и нажмите "Отправить")

0

Hostip.info - это проект с открытым исходным кодом, целью которого является создание / поддержка базы данных, сопоставляющей IP-адреса с городами. Их страница с описанием объясняет источники данных, которые использовались для заполнения этой базы данных.

Используя HostIP, есть два способа получить данные о местоположении с IP-адреса:

У них также есть хорошо продуманный и простой в использовании RESTFUL API: просто введите свой IP-адрес после i p = в строке запроса GET):

import urllib

response = urllib.urlopen('http://api.hostip.info/get_html.php?ip=12.215.42.19&position=true').read()

print(response)

Во-вторых, веб-сайт проекта также предоставляет полную базу данных для скачивания.

0

Если вы хотите видеть геолокацию на веб-сайте, по которому вы легко ориентируетесь, вы должны установить надстройку Flagfox для Firefox: вы установите флажок рядом с адресной строкой и щелкните по ней дополнительную информацию (город, IP ...).

Кроме того, вы можете использовать http://geo.flagfox.net, чтобы увидеть тот же detais для любого IP-адреса или имени сервера.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .