У меня есть текстовый файл, содержащий список из 190 IP-адресов. Как получить расположение всех этих серверов?Как найти географические координаты/местоположения сервера?
1
A
ответ
1
Существует несколько бесплатных IP-адресов для Geo, таких как ipinfodb, ниже страницы есть несколько образцов в разных языках. Я предлагаю googling термин «ip to location api» для большего количества apis.
1
В питона с pygeoip:
#!/usr/bin/env python
import sys
import pygeoip
def main():
db = pygeoip.GeoIP('GeoLiteCity.dat')
source = "MyIpList.txt"
with open(source, 'r') as fs:
lignes = fs.readlines()
for ip in lignes:
dico = db.record_by_addr(ip)
for k,v in dico.iteritems():
print "%s : %s" % (k,v)
if __name__ == '__main__':
main()
Вы скачиваете Geo city database и создать файл MyIpList.txt в этом формате.
64.233.161.99
209.131.36.159
Этот сценарий печать: country_code country_code3 COUNTRY_NAME области, город postal_code широты долготы dma_code metro_code код_город REGION_NAME TIME_ZONE
record_by_addr() Вернуть ДИКТ.