Как получить код страны для нескольких IP-адресов одновременно (5 и более), используя базу данных geoip2?
Вот так я получаю название страны для одного IP-адреса за раз, но мне нужно иметь возможность делать несколько, иногда более 50 одновременно.
>>>import geoip2.database
>>>
>>>reader = geoip2.database.Reader('/path/to/GeoLite2-City.mmdb')
>>>
>>>response = reader.city('128.101.101.101')
>>>
>>>response.country.iso_code
>>>
>>>response.country.name
2 ответа
Поместите все IP-адреса в список и переберите список.
reader = geoip2.database.Reader('/path/to/GeoLite2-City.mmdb')
ip_list=['128.101.101.101','198.101.101.101','208.101.101.101','120.101.101.101','129.101.101.101','138.101.101.101','148.101.101.101']
for ip in ip_list:
response = reader.city(ip)
print response.country.iso_code
print response.country.name
или добавьте ip в лист Excel и используйте pandas или xlrd, чтобы прочитать ip в список и повторить их снова, как показано выше.