Есть ли способ использовать любой из API Google, чтобы получить IP-геолокацию моего пользователя в режиме реального времени?
Я думаю, что он будет использовать базу данных Analytics, и это единственное, что действительно правильно отслеживает моего пользователя на уровне города (любой другой IP-Location-API, который я смог проверить, показывает мой IP-адрес, расположенный почти в 200 км от моего реального местоположения. Google показывает это 200 м (!)!)
Я хочу знать местоположение моего пользователя (на стороне браузера и передать его на мой сервер или на стороне сервера), чтобы обслуживать контент, зависящий от города. Но я не хочу, чтобы мои пользователи стали одним из этих раздражающих всплывающих окон с просьбой использовать GPS, поэтому я хочу использовать IP-адрес.
Какие-либо предложения?
Если вы не хотите использовать информацию GeoIP с поддержкой клика HTML5 , вам понадобится база данных GeoIP, такая как база данных GeoIP Lite от MaxMind , которая бесплатна и хорошо работает для 99% случаев использования. Любая другая услуга с более точной / подробной информацией будет стоить вам больших денег. MaxMind – это похвала многих людей и хорошо работает для моих нужд лично. Он может предоставить вам информацию о стране / регионе / городе / широте-долготе-координатах / континентах.
вы можете попробовать API IP Geolocation от whoisxmlapi
вы можете получить ip геолокацию с несколькими строками кода:
try: from urllib.request import urlopen except ImportError: from urllib2 import urlopen ip = '8.8.8.8' api_key = 'your_api_key' api_url = 'https://geoipify.whoisxmlapi.com/api/v1?' url = api_url + 'apiKey=' + api_key + '&ipAddress=' + ip print(urlopen(url).read().decode('utf8'))
Вы можете использовать API геокодирования Google для получения реального адреса для местоположения, но входы, необходимые для этого API, – это координаты широты и долготы.
Пример: http://maps.googleapis.com/maps/api/geocode/json?latlng=43.473,-82.533&sensor=false
Вам необходимо найти и IP-адрес API-интерфейса местоположения от какого-либо другого поставщика, чтобы добраться до уровня города или оставить запрос, чтобы они предоставили вам доступ к своей геолокации.
IPInfoDB выполняет довольно хорошую работу при автоматическом сужении местоположения через IP без использования ввода: