Comments 134
Мой город определило как Рига. Печально, но порносайты определяют город точнее.
XKCD в тему: xkcd.com/713/
XKCD в тему: xkcd.com/713/
+45
Месье знает толк в порнографии.
-30
Да, а у меня вообще не определен, хотя Яндекс показывает. Понятно, что это из-за частных сегментов сетей межрегиональных провов, которые раздают IP сами по себе. Понятно что крупные игроки добывают инфу потщательнее… А у гугла или яндекса в API нет ничего такого, чтобы получать город по IP? Если нет, то вообще тема очень востребованная и непаханая, сделать вменяемый Geo сервис как веб-службу, там можно еще персонализированную информацию и предпочтения добавить… вообщем что-то без фанатизма, но полезное как пользователю так и ресурсу. Премущества именно службы были б в том, что она хранит, как бы, кросссайтовую информацию, то есть могла бы делиться полезной информацией. Яша и Гугл то немалые «портреты» собирают благодаря установленным повсюду Google Analytics и Яндекс.Метрик, а вот обычным ресурсам такая сингулярность недоступна :)
0
Спасибо! Такая точность мне не нужна :-)
Ваш IP-адрес: 85.113.49.83
Страна: Россия
Город: Пермь
Ваш IP-адрес: 85.113.49.83
Страна: Россия
Город: Пермь
+2
не пытались русифицировать через онлайн переводчики (аля гугл-транслэйлт и т.п.?)
для точности можно сравнивать перевод через несколько сервисов, и при 100% совпадание утверждать автоматически
для точности можно сравнивать перевод через несколько сервисов, и при 100% совпадание утверждать автоматически
0
Вряд ли Гугль одобрит 180 тысяч запросов за короткий промежуток времени. Но проверю на досуге.
0
«Одобрит», вот только лулзов от такого перевода будет тьма. Я переводил свою БД таким образом на русский, замучился править после нее.
0
только через 1 сервис или несколько, с проверкой совпадений?
+1
До нескольких сервисов я не додумался. Но ваш вариант, боюсь, не сильно упростит дело.
Вот, например, названия городов нашего многогранного мира: West Lake, American Fork, Young. Во всех случаях при переводе на русский вы получите «Западное Озеро», «Американская Вилка» и «Молодой!..». Хотя, в реальной жизни хорошо бы получить «Вэст Лэйк», «Американ Форк» и «Янг» — то есть транскрипцию.
Вот, например, названия городов нашего многогранного мира: West Lake, American Fork, Young. Во всех случаях при переводе на русский вы получите «Западное Озеро», «Американская Вилка» и «Молодой!..». Хотя, в реальной жизни хорошо бы получить «Вэст Лэйк», «Американ Форк» и «Янг» — то есть транскрипцию.
+3
тогда тут речь уже о не переводе
вспоминая 10 летней давности руский язык, названия городов не переводятся
тогда буквально надо транслировать латиницу в кирилицу
вспоминая 10 летней давности руский язык, названия городов не переводятся
тогда буквально надо транслировать латиницу в кирилицу
+2
Да действительно можно не переводить, а делать обратную транслитерацию
Парсить например с www.maxmind.com/app/locate_my_ip, он вроде нормально определяет города.
Парсить например с www.maxmind.com/app/locate_my_ip, он вроде нормально определяет города.
0
В Google Labs есть сервис транслитерации с API, но 100% ему доверять я бы не рискнул. www.google.com/transliterate/
0
мне казалось очевидным, что английские названия городов должны оставаться в подобной базе английскими
+1
Как минимум, для русского сайта вы переведете названия стран, чтобы в select'е получить единообразие. Тогда останется открытым вопрос, что делать, например, с адресом: «Таиланд, Chon Buri, Pattaya». Согласитесь, выглядит коряво, когда написано рядом. Многие переводят и регионы с городами поэтому.
0
но на транслит иностранных названий русскими буквами страшно смотреть :)
0
Равно как и наоборот: dz.livejournal.com/616388.html
0
Может географические названия лучше через Википедию «переводить»? Конечно, покрытие не очень, но с крупными городами все нормально будет.
0
Free GeoLite City от maxmind определил город (Ростов-на-Дону), а ваш скрипт нет:
Ваш IP-адрес: 188.114.31.96
Страна: Россия
Город: Не определен
Ваш IP-адрес: 188.114.31.96
Страна: Россия
Город: Не определен
0
зы.
Ваш IP-адрес: 89.151.14X.X
Страна: Россия
Город: Новочебоксарск
всегда было Чебоксары, но вдруг стало Новчик О_о
Ваш IP-адрес: 89.151.14X.X
Страна: Россия
Город: Новочебоксарск
всегда было Чебоксары, но вдруг стало Новчик О_о
0
Новочебоксарск и Чебоксары, судя по гуглокартам, располагаются достаточно близко друг от друга (~15 км.). По идее это допустимая погрешность для свободных баз подобного рода.
0
А у меня — «город не определён». Хотя вроде как за окном — Чебоксары.
0
Та же самая ситуация, Чебнет?
0
Екатеринбург, провайдер «Планета» — история та же ( куцая, либо не очень актуальная база.
Но, наверно это лучше что есть из открытого, т.к. nginx тоже использует эту базу: ngx_http_geoip_module
Но, наверно это лучше что есть из открытого, т.к. nginx тоже использует эту базу: ngx_http_geoip_module
0
В мою базу из maxmind попали только те диапазоны IP, для названий городов которых я нашёл перевод. Поэтому возможна ситуация, что maxmind определяет ip правильно (по-английски), а мой скрипт не нашёл.
Для тех, кому достаточно английской базы, но важна скорость — посмотрите в сторону модуля nginx GeoIP. Там используется эта же база maxmind.
Для тех, кому достаточно английской базы, но важна скорость — посмотрите в сторону модуля nginx GeoIP. Там используется эта же база maxmind.
0
Для тех, кому достаточно английской базы, но важна скорость — посмотрите в сторону модуля nginx GeoIP. Там используется эта же база maxmind.
тут можно и mod_geoip заюзать, геолокация далеко не накаждой странице нужна.
P.S.
А зачем все это в mysql? почему не оставить в формате maxmind?
0
Странное демо:
«IP-адрес не определен»
С учетом того, что у меня статический белый адрес. Через анонимайзеры не хожу… Как так, что не смгло определить с какого IP коннект пришел?
«IP-адрес не определен»
С учетом того, что у меня статический белый адрес. Через анонимайзеры не хожу… Как так, что не смгло определить с какого IP коннект пришел?
+1
Город не определен.
А порнобаннеры, как было сказано выше, определяют)
А порнобаннеры, как было сказано выше, определяют)
0
Город: Не определен
=(
=(
0
Словари стран, регионов и городов на разных языках есть тут geo.webnabor.com/?link=6
Единственное там не самая полная база данных и как и везде встречаются некоторые косяки.
Единственное там не самая полная база данных и как и везде встречаются некоторые косяки.
+2
еще остались люди, которые не слышали до 2010 года про MaxMind?
+1
Спасибо, Волгоград, провайдер ЮТК определил верно.
Кстати думаю было бы супер иметь такой сервис в виде онлайн службы с доступом по API.
Кстати думаю было бы супер иметь такой сервис в виде онлайн службы с доступом по API.
0
Кто бы сделал быстрый REST-сервис для такого дела…
0
спонсируй железом и каналами
+3
Сколько надо?
0
А сколько есть? Освою все.
Просто не вижу никакой коммерческой выгоды в этом: просто ленивый жаваскриптер пофантазировал на тему модных аббревиатур. Для серьезного сайта нет проблемы использовать настоящий maxmind + какой-нибудь интерфейс.
Просто не вижу никакой коммерческой выгоды в этом: просто ленивый жаваскриптер пофантазировал на тему модных аббревиатур. Для серьезного сайта нет проблемы использовать настоящий maxmind + какой-нибудь интерфейс.
+1
сервер на сотке всегда найдется. был бы сервис на который не жалко его потратить… Например, эта тема мне нравится и самому интересна.
0
Допустим. Почему эта затея лучше, чем просто отдать сервер сиротам? (очередному щкольнику под CS) Если вы видите тут перспективы хоть какого-то профита — опишите их.
А там глядишь кто-то и сделает. Может даже я.
А там глядишь кто-то и сделает. Может даже я.
0
А несерьезный, ну разве он станет за это платить?
0
сделаемс.
0
UFO just landed and posted this here
У меня тоже определен максминдом и НЕ определен вами. (95.37.123.74 — Нижний Новгород)
0
У меня все точно определил:
Ваш IP-адрес: 83.69.129.162
Страна: Узбекистан
Город: Ташкент
Ваш IP-адрес: 83.69.129.162
Страна: Узбекистан
Город: Ташкент
0
А чем вам ipgeobase.ru/ не подошел?
+6
Тем, что ipgeobase.ru ограничивается городами России.
0
Ну вы хотя бы для РФ используйте базу от ipgeobase. Я полгода назад тоже делал проект, где нужно было определять с точностью до города — Maxmind по России откровенно сливает.
+2
А что мешает использовать обе базы? Если ipgeobase не находит адрес, спрашиваем у maxmind. Maxmind действительно не очень хорошо работает с российскими адресами — ipgeobase в этом плане много лучше.
0
Видимо потому, что там только русский сегмент адресов.
0
Хорошо бы иметь для начала возможность определить населенный пункт пусть даже не по IP… Имейте в виду, что в России до сих пор отсутствует простой перечень населенных пунктов. А приведенная на картах информация систематически противоречит реальным данным, собираемым в частности в ходе переписей.
источник — проф. Алексеев А. И. (географический факультет МГУ), доклад на конференции GeoВласть.
P.S. Это не касается крупных городов и большинства городов вообще — они конечно известны точно.
источник — проф. Алексеев А. И. (географический факультет МГУ), доклад на конференции GeoВласть.
P.S. Это не касается крупных городов и большинства городов вообще — они конечно известны точно.
0
Как это отсутствует?
КЛАДР (Классификатор АДресов России) как раз-таки и содержит официальный перечень не только населенных пунктов, но даже и улиц с адресами домов и квартир (последнее в открытом доступе недоступно), который к тому же еще и регулярно обновляется.
КЛАДР (Классификатор АДресов России) как раз-таки и содержит официальный перечень не только населенных пунктов, но даже и улиц с адресами домов и квартир (последнее в открытом доступе недоступно), который к тому же еще и регулярно обновляется.
0
Неточность КЛАДРа постоянно отмечается в форумах — «КЛАДР не является ни полным, ни непротиворечивым».
Да это и очевидно. Основные источники несообразностей сейчас (это из того же доклада Алексеева) — низкая культура делопроизводства и ведения статистики, регулярные изменения статусов населенных пунктов с соответствующей неразберихой в отчетности, активная и плохо контролируемая миграция, задержки с переводом уже построенных населенных пунктов в разряд построенных (таким образом как-то экономят на налогах), всевозможные этнические поселения — особенно возле Москвы, быстрое вымирание русского сельского населения. В учете внутренней миграции элементарно не сходятся концы с концами между регионами.
КЛАДР соответствует некоторой виртуальной реальности, периодически (раз в десять лет обычно — с переписями населения) корректируемой, но в целом не актуальной.
Да это и очевидно. Основные источники несообразностей сейчас (это из того же доклада Алексеева) — низкая культура делопроизводства и ведения статистики, регулярные изменения статусов населенных пунктов с соответствующей неразберихой в отчетности, активная и плохо контролируемая миграция, задержки с переводом уже построенных населенных пунктов в разряд построенных (таким образом как-то экономят на налогах), всевозможные этнические поселения — особенно возле Москвы, быстрое вымирание русского сельского населения. В учете внутренней миграции элементарно не сходятся концы с концами между регионами.
КЛАДР соответствует некоторой виртуальной реальности, периодически (раз в десять лет обычно — с переписями населения) корректируемой, но в целом не актуальной.
0
Нужно уже делать КЛАДР-OnLine, было бы здорово. С возможностью свободного добавления/редактирования информации. И с разделением «проверенной» и «не проверенной» информации. Способы голосования. Или например чтобы часть информации переходила в статус проверенной после порога числа её использования.
+1
Полностью согласен, Web 2.0. К этому все и идет… Но только почему же только КЛАДР-OnLine? :) Любую информацию нужно локализовывать в пространстве, и во времени, и выкладывать в общедоступное единое хранилище «непроверенной» информации. Это и есть неогеография :)
Любая информация должна содержать ответы на вопросы «Что? Где? Когда?»
Любая информация должна содержать ответы на вопросы «Что? Где? Когда?»
0
Спасибо, достойная замена давно не обновлявшейся ip2country.csv.
0
Ставрополь не определился
0
Определило город верно. При том, что хваленные выше, порнобаннеры определяли город как Пермь.
0
Судя по отзывам точность определения города сильно ниже=) Я не в Ярославле оказался а в Санкт-Петербурге (
0
ГлоНасс блеать!
+3
Ваш IP-адрес: 95.79.14.***
Страна: Россия
Город: Не определен
Почему-то ситуация с Нижним Новгородом почти везде такая.
На многих сайтах определяется как Великий Новгород или даже Пермь.
Редко определяется правильно.
Обидно :(
P.S.: Провайдер Дом.ru
Страна: Россия
Город: Не определен
Почему-то ситуация с Нижним Новгородом почти везде такая.
На многих сайтах определяется как Великий Новгород или даже Пермь.
Редко определяется правильно.
Обидно :(
P.S.: Провайдер Дом.ru
0
Уважаемый netload, вы сделали очень доброе дело. лично я вам очень благодарен, спасибище вам неимоверное! успехов вам во всех начинаниях! давно я таких полезных вещей в нете не видел.
0
А как по городу и стране определить часовой пояс?
0
Может, чем-то поможет: download.geonames.org/export/dump/timeZones.txt
Правда, далеко не все города. Только крупные.
Правда, далеко не все города. Только крупные.
0
По теме: что лучше для определения страны по этой базе?
MySQL или поиск по 28метровому файлу .dat?
MySQL или поиск по 28метровому файлу .dat?
0
Зависит от того, чем осуществляется поиск по текстовому файлу. Если php — то однозначно mysql.
0
Если под .dat файлом подразумевается бинарный файл от maxmind — то, однозначно, родное API под нужную платформу.
Решение на MySQL надо еще суметь приготовить, у топикстартера здесь полный провал.
Решение на MySQL надо еще суметь приготовить, у топикстартера здесь полный провал.
0
www.maxmind.com/app/mylocation — определил правильно (Харьков, Украина)
Ваш netload.biz/ip.php — нет (Киев, Украина).
Скорее ошибка в определении города.
Ваш netload.biz/ip.php — нет (Киев, Украина).
Скорее ошибка в определении города.
0
а мой город не определило вообще, живу в Испании, город Валенсия.
0
Украина, Луганская обл., Луганск не тянет на испанию
0
Регистрировался, на хабре, когда жил в Украине, умник;)
+1
Да не глуп.
И как там?
И как там?
0
vkontakte.ru/album14249404_120838980 вот я фоткал
+5
Ваш IP-адрес: 77.34.83.XX
Страна: Россия
Город: Владивосток
промазал километров этак на 150… :)
0
меня определил верно
Ваш IP-адрес:92.241.xxx.237
Страна: Россия
Город: Ижевск
Ваш IP-адрес:92.241.xxx.237
Страна: Россия
Город: Ижевск
0
Определило как Таиланд, Бангкок, но я на самом деле нахожусь в Чианг Мае!
0
Я в Тюмени, мне сказали что в Тобольске. Обычно Тюмень определяют как Ебург, реже как Пермь… Но как Тобольск — первый раз)
+1
Может попробовать через википедию перевести?
Делаем парсер, который:
1. Смотрит страничку с названием города на английском языке.
2. Проверяет, город ли это (например, если в правом углу отобразились коодринаты, то точно город)
3. Смотрит название статьи по-русски.
Учитывая то, что в википедии есть даже мелкие городки под 10 000 человек, можно перевести очень много названий и весьма точно.
Делаем парсер, который:
1. Смотрит страничку с названием города на английском языке.
2. Проверяет, город ли это (например, если в правом углу отобразились коодринаты, то точно город)
3. Смотрит название статьи по-русски.
Учитывая то, что в википедии есть даже мелкие городки под 10 000 человек, можно перевести очень много названий и весьма точно.
+2
Что касается MaxMind. Есть один недостаток, заключается он в том, что названия стран, городов хранятся в базе на английском варианте латиницей.
Есть ещё достойные аналоги MaxMind, например:
CNGeoip — платная база адресов с модулем определения города и страны по IP-адресу. По заявлению разработчиков база содержит русские и английские названия городов, стран, регионов и областей. Выполнена улучшенная поддержка городов бывшего СССР, что отличает её в лучшую сторону от базы GeoIP. Если Вы собираетесь создавать коммерческий сервис в Рунете на русском языке, который требует определения страны и города по IP, возможно, стоит посмотреть в сторону CNGeoip.
ООО «Юмисофт» разработчик системы управления сайтами UMI.CMS официальный партнер CNGeoip.
WorldIP от «WIPmania» — база данных, позволяющая определять реальные физические расположения IP-адресов. Она позволяет определять страну пользователя и абсолютно бесплатна для персонального и бизнес-использования. Изюминка базы WorldIP заключается в определении реальной страны размещения пользователя, а не местоположения интернет-провайдера, которому принадлежит пул IP-адресов.
Есть ещё достойные аналоги MaxMind, например:
CNGeoip — платная база адресов с модулем определения города и страны по IP-адресу. По заявлению разработчиков база содержит русские и английские названия городов, стран, регионов и областей. Выполнена улучшенная поддержка городов бывшего СССР, что отличает её в лучшую сторону от базы GeoIP. Если Вы собираетесь создавать коммерческий сервис в Рунете на русском языке, который требует определения страны и города по IP, возможно, стоит посмотреть в сторону CNGeoip.
ООО «Юмисофт» разработчик системы управления сайтами UMI.CMS официальный партнер CNGeoip.
WorldIP от «WIPmania» — база данных, позволяющая определять реальные физические расположения IP-адресов. Она позволяет определять страну пользователя и абсолютно бесплатна для персонального и бизнес-использования. Изюминка базы WorldIP заключается в определении реальной страны размещения пользователя, а не местоположения интернет-провайдера, которому принадлежит пул IP-адресов.
+2
Что-то много комментариев о том, что город определился неправильно. Нужно выдерживать баланс =)
Мой город (Томск) определен верно.
Мой город (Томск) определен верно.
+2
На данный момент в топике около 20 сообщений об ошибке. За это время демо-скрипт запускался ~3,000 раз. Если предположить, что каждый 15-й товарищ решил написать об ошибке, то получим точность 90%, как и было заявлено в тексте статьи.
Есть над чем поработать. Постараюсь в следующей версии повысить точность определения по России за счет ipgeobase.ru
Есть над чем поработать. Постараюсь в следующей версии повысить точность определения по России за счет ipgeobase.ru
+1
Беларусь, Могилев — все в точку!
+2
Киев, а выдало бровары.
0
А у maxmind база по городам разве не платная? да и потом базу все равно нужно в актуальном состоянии держать…
0
Иркутск, Россия — полёт нормальный)
0
Я в Уфе, а пишет Москву. Для города-миллионника можно было бы и точнее. ~1500км разница. На WIPmania все точно, даже провайдер.
+1
Ваш IP-адрес: 194.50.xxx.xxx
Страна: Украина
Город: Бар
Ошибся км на 90
Страна: Украина
Город: Бар
Ошибся км на 90
0
меня определил
Бруклин, США
возьму БД на всякий случай, спасибо
Бруклин, США
возьму БД на всякий случай, спасибо
0
Вот есть ещё вариант для стран (на английском).
db.verych.ru/2010/01/12/ip-to-country/
db.verych.ru/2010/01/12/ip-to-country/
-1
Ваш IP-адрес: 91.210.149.74
Страна: Украина
Город: Ялта
Хоть городок и маленький, а определило верно.
Страна: Украина
Город: Ялта
Хоть городок и маленький, а определило верно.
0
Кстати, можно попробовать с помощью API Яндекс.Карта определить местоположение пользователя.
Например, переходя по указанной ссылке ниже, получим название страны, города и возможно название региона:
Всё что нам нужно, это: var YMaps;
Например, переходя по указанной ссылке ниже, получим название страны, города и возможно название региона:
api-maps.yandex.ru/1.1/index.xml?key=ANpUFEkBAAAAf7jmJwMAHGZHrcKNDsbEqEVjEUtCmufxQMwAAAAAAAAAAAAvVrubVT4btztbduoIgTLAeFILaQ==
Всё что нам нужно, это: var YMaps;
+1
Ого! Думаю, что это довольно точный вариант.
Только похоже API никакого нет у них для того, чтобы получить местонахождение по произвольному IP.
То есть придется инициализировать скрипт у клиента, а потом уже результат распознавания AJAXом переправлять на сервер.
Только похоже API никакого нет у них для того, чтобы получить местонахождение по произвольному IP.
То есть придется инициализировать скрипт у клиента, а потом уже результат распознавания AJAXом переправлять на сервер.
0
Хм… Яндекс с MaxMind`ом никак не могут решить я в Чикаго или Нью-Йорке.
Хотя я бы с ними с радостью согласился, но за окном Москва…
Хотя я бы с ними с радостью согласился, но за окном Москва…
+1
Определил правильно мой маленький городок но с ошибкой в русском варианте. Не значительно правда — вместо ШебоЙган — ШебоИган.
0
UFO just landed and posted this here
Вот поэтому у нас (WIPmania) используется собственный метод — основанный на данных с маршрутизаторов
www.wipmania.com/ru/blog/coverage-ip-address-space/
www.wipmania.com/ru/blog/why-worldip-data-rather-than-whois-data-examples/
А города у нас тоже будут…
www.wipmania.com/ru/blog/coverage-ip-address-space/
www.wipmania.com/ru/blog/why-worldip-data-rather-than-whois-data-examples/
А города у нас тоже будут…
+1
netload.biz/ip.php
Ваш IP-адрес: 195.122.234.170
Страна: Россия
Город: Не определен
www.techinfo.net.ru/ip2ruscity/
IP2RusCity — определение города и региона России по ip адресу
Ваш ip — 195.122.234.170, город/регион: Нижний Новгород(8312)/Нижегородская область
БД Ip2Country, страна: Россия
плохо искали — очень плохо!
вообще искать в буржуляндии базы по России дело очень не благодарное. Я вот живу в Нижнем Новгороде, и почти все (я вот не вспомню сейчас какая правильно определяла, но стоила она не менее 100 баксов точно, даж больше) говорят, что я живу в Новгороде (ну а от порнобанеров только улыбка — «Наташа в Новгороде онлайн-зацени» :) )! даже гугл это не сразу распозновал. ну ушь про колво городов в России — я просто молчу. Как уже сказали — город миллионник, и Москва со своими 10-15М (сколько там сейчас точно не знаю) нервно курит в углу :)
Кстати, база www.techinfo.net.ru/ip2ruscity/ платная — 2к в год, но оно того стоит.
0
0
Харьков не определён(
0
Ваш IP-адрес: 95.135.2.200
Страна: Украина
Город: Киев
Пролёт чуть меньше чем в 1000 км :) Прямо снайперская точность!
0
А вообще имхо автор просто решил этой статьёй познакомить хабраобщество и найти земляков :)
+3
прикрутил последнюю версию БД от ТС, пробил все айпи, указанные в двух ветках по теме.
Все теперь определяется правильно, и Нижний Новгород, и прочие проблемные города.
Скорость исполнения скрипта в среднем около 0,001. Понравилось, буду использовать, спасибо :)
Все теперь определяется правильно, и Нижний Новгород, и прочие проблемные города.
Скорость исполнения скрипта в среднем около 0,001. Понравилось, буду использовать, спасибо :)
0
Расскажите пожалуйста, по каким словарям переводили города? Если сохранились исходники скриптов, выложите пожалуйста!
0
Сам спросил, сам ответил, оказывается есть официальный перевод
dev.maxmind.com/faq/geoip#localized_cities
www.maxmind.com//GeoIPLocationCSV-localized.zip
dev.maxmind.com/faq/geoip#localized_cities
www.maxmind.com//GeoIPLocationCSV-localized.zip
0
Sign up to leave a comment.
База GeoIP – страны и города