База данных GeoIP, которая будет геотаргетироваться по штату США

#geoip

#geoip

Вопрос:

Я ищу базу данных ГЕО IP (аналогичную стране и городу MaxMind GeoLite2), которая позволит мне идентифицировать штат США, из которого прибывает пользователь, чтобы настроить таргетинг на определенный контент для этого пользователя.

Кто-нибудь знает, как или где я мог бы найти такую базу данных / сервис или решение?

Комментарии:

1. Базы данных городов GeoIP2 и GeoLite2 MaxMind имеют подразделения / регионы, включая штаты в США. Другие поставщики предлагают аналогичные решения, хотя я не уверен, что у них покрытие лучше.

Ответ №1:

Не ожидайте высокой точности, если вас не устраивает точность страны / города. В конце концов, это данные геолокации, основанные на IP, и их точность варьируется. Он основан на интернет-провайдерах или компаниях, которые управляют базами данных (коммерческие базы данных могут иметь более высокую точность). Посмотрите на веб-инструмент с информацией об IP-местоположении (например http://geoipinfo.org / ) и вы примерно увидите, где он вас найдет, а также обеспечите точность на уровне города и страны — в процентном отношении. Он использовал базу данных ip2location для поиска и их точных данных.

Ответ №2:

Эта тема старая, но на сегодняшний день я использовал http://api.ipstack.com и это работает безукоризненно. У них есть ОЧЕНЬ обширные примеры справки на их сайте, но в основном вы совершаете звонок, анализируете данные и получаете то, что хотите.

  1. Во-первых, убедитесь, что у вас есть какие-либо / все включает (Namespace=System.Xml , Система.Чистая, бла-бла-бла).
  2. Во-вторых, убедитесь, что не проводите тестирование на IP-адресе частной сети (192.168.x.x или 10.x.x.x), потому что это всегда будет возвращать пустые / пустые поля, и вы подумаете, что что-то закодировано неправильно.
  3. В-третьих, вам понадобится Acess_Key из ipstack.com … вы можете настроить БЕСПЛАТНУЮ учетную запись (я думаю, 10 000 запросов в месяц) и получить свой код доступа для ввода в строку ниже для вызова API. Я заполнил форму и был готов к работе за 10 минут бесплатно.

Это помогло мне отслеживать посетителей на любой странице:

 string IP = "";
string strHostName = "";
string strHostInfo = "";
string strMyAccessKeyForIPStack = "THEYGIVEYOUTHISWHENYOUSETUPFREEACCOUNT";
strHostName = System.Net.Dns.GetHostName();

IPHostEntry ipEntry = System.Net.Dns.GetHostEntry(strHostName);
IPAddress[] addr = ipEntry.AddressList;

IP = addr[2].ToString();

XmlDocument doc = new XmlDocument();
string strMyIPToLocate = "http://api.ipstack.com/"   IP   "?access_key=strMyAccessKeyForIPStackamp;output=xml";

doc.Load(strMyIPToLocate);
XmlNodeList nodeLstCity = doc.GetElementsByTagName("city");
XmlNodeList nodeLstState = doc.GetElementsByTagName("region_name");
XmlNodeList nodeLstZIP = doc.GetElementsByTagName("zip");
XmlNodeList nodeLstLAT = doc.GetElementsByTagName("latitude");
XmlNodeList nodeLstLON = doc.GetElementsByTagName("longitude");

strHostInfo = "IP is from "   nodeLstCity[0].InnerText   ", "   nodeLstState[0].InnerText   " ("   nodeLstZIP[0].InnerText   ")";
// Then I do what you want with strHostInfo, I put it in a DB myself, but whatever.