Комментарии 45
прошу прощения за сбитый формат после кода на перле, очень похоже, на то что тег code не закрыт, но найти причину пока не могу.
0
Можно было ещё залить данные в Fusion Tables, они для подобных задач и были созданы. Красивые визуализации прилагаются.
Вот например небольшая база айпишников по США.
Вот например небольшая база айпишников по США.
0
Простите за занудство, но раз уж на нерусском, то наверное не Kolvo, а Amount, например.
+1
+1
И в Антарктиде точка,
или это битый пиксель у меня на мониторе?))
или это битый пиксель у меня на мониторе?))
+5
В Антарктиде есть интернет, я с коллегой по аське общался, когда он там был. Задержка была ощутима — секунда туда, секунда обратно.
0
как до Луны :)
-1
да, я знал, пингвины активно используют интернет
ну а если серьезно, не подскажете, как проложена до данных широт связь.
ну а если серьезно, не подскажете, как проложена до данных широт связь.
0
спутник, как еще
0
1) тогда странно «точная» координата для спутникового приемо-передатчика
2) секунда задержки, это еще хорошо в данном случае :)
2) секунда задержки, это еще хорошо в данном случае :)
0
1) а вы уверены, что она точная? Меня вот обычно в центр Москвы помещают по IP. А я там уже с полгода не бывал.
2) чтож хорошего, за секунду сигнал проходит 300 000 км, это несколько раз до телекоммуникационного спутника и обратно. Значит много времени теряется на различных маршрутизаторах, есть к чему стремиться
2) чтож хорошего, за секунду сигнал проходит 300 000 км, это несколько раз до телекоммуникационного спутника и обратно. Значит много времени теряется на различных маршрутизаторах, есть к чему стремиться
0
Так не только в Антарктиде! Насколько я знаю в Норильск тоже нету никаких наземных каналов, и вся связь 100 тысячного города с миром происходит через спутник…
+1
А что вас так смущает?
0
Это феерично! Хотелось бы только разрешение побольше, эдак 1280х1024 и соответственно более детализированно
0
А всего-то нужно было для импорта CVS в базу использовать mysqlimport. А дальше в базе всё пошло бы гораздо быстрее. Очень сэкономили бы во времени.
+1
т.е. импортировать svs в БД, а потом парсить БД для необходимого результата?
-1
Через mysqlimport огромные CVS можно превратить в таблицу в базе за очень короткое время, а далее, изменениями параметров полей, добавлением индексов и простейшими запросами добиться необходимого вида базы (чего собственно и делать для такой задачи не обязательно). В итоге перл-скрипт будет лишним + экономия времени не сопоставимая. По опыту скажу, CSV в 10+ гигабайт вскочил в базу за минуты (порядка 5-8), попытки же парсить его скриптами показывали порядка пары недель на той же машине.
-1
НЛО прилетело и опубликовало эту надпись здесь
даешь серые ИП Европе и Японии!
-4
При чем здесь серые IP?
+2
Правда она считает, что я из бутово переехал в Александровский сад. Но ничего, нам такая точность не к чему.
Видимо координаты центра города просто указаны :)
0
Я в свое время тоже таким развлекался: d1.fenrirko.aumi.ru/fansub/testmap.jpg
А для GeoIP в цпане есть модуль с логичным названием Geo::IP
А для GeoIP в цпане есть модуль с логичным названием Geo::IP
0
запрашивать координаты для определенных ипов из всего диапазона?
0
Не понял вопроса.
0
>есть модуль с логичным названием Geo::IP
насколько я помню данный модуль возвращает координату, и прочие данные при запросе к нему ip адреса.
т.е. вы предлагаете поочередно спросить у данного модуля все возможные варианты ip адресов?
насколько я помню данный модуль возвращает координату, и прочие данные при запросе к нему ip адреса.
т.е. вы предлагаете поочередно спросить у данного модуля все возможные варианты ip адресов?
0
А можно то же самое, только яркость (цвет, оттенок,...) точек в зависимости от поля kol?
0
Осталось разбивку по цветам и страну+количество адресов.
0
Вот на Ruby:
Код:
Код:
require 'geoip'
require 'RMagick'
LAT, LON, WIDTH, HEIGHT, BORDER = 180, 360, 2000, 1200, 70
OFFSET_X = (WIDTH.to_f - BORDER.to_f) / LON.to_f
OFFSET_Y = (HEIGHT.to_f - BORDER.to_f) / LAT.to_f
c = Magick::Image.new(WIDTH, HEIGHT, Magick::GradientFill.new(0, 0, HEIGHT, 0, "#24302F", "#1A2423")) do |img|
#img.background_color = "#1A2423"
end
cache = {}
GeoIP.new(File.dirname(__FILE__) + '/GeoLiteCity.dat').each do |r|
x = (180.to_f + r.longitude.to_f) * OFFSET_X
y = (90.to_f - r.latitude.to_f) * OFFSET_Y
z = x.to_i * y.to_i
cache[z] ||= 0
gc = Magick::Draw.new
gc.fill(cache[z].to_i > 0 ? "#7D762B" : "#EBE3AF")
gc.point x, y
gc.draw c
cache[z] += 1
end
c.write File.dirname(__FILE__) + '/map.png'
+4
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
GeoIP, попытки нетрадиционного использования