py-ipchecker/main.py
Benjamyn 751e60ff9a Grabbed new test data;
Added mass IPlookup;
Created dictionary with IP<Key>, CountryCode<Value>;
Sorted dictionary by country code;
2018-02-05 16:49:42 -05:00

67 lines
1.2 KiB
Python

import os
from ipwhois.net import Net
from ipwhois.asn import IPASN
from pprint import pprint
tmpips = [] #NOTE Need to reset this variable between runs
ips = []
ipdict = {}
def openFile(filename):
try:
ipList = open(filename)
except Exception as e:
print(e)
print("Please create an iplist.txt file")
return ipList
def splitLine(fileline):
tmpline = fileline.split('\n')
retval = []
return tmpline
def lookup(ip):
global ipdict
try:
net = Net(ip)
obj = IPASN(net)
results = obj.lookup()
#pprint(results)
for key,value in results.iteritems():
if key == "asn_country_code":
#print(value)
ipdict[ip] = value
except Exception as e:
print(e)
ipListFile = openFile("iplist.txt")
ipList = ipListFile.read()
test = splitLine(ipList)
#print test
for a in test:
b = a.split(' ')
tmpips.append(b)
for x in tmpips:
for y in x:
if y != '':
ips.append(y)
for value in ips:
if "." in value:
lookup(value)
#pprint(ipdict)
for key, value in sorted(ipdict.iteritems(), key=lambda (k,v): (v,k)):
if "AU" not in value:
if "NZ" not in value:
print key + '\t' + '\t' + value
# if x != "''":
# print(x)
#print(test)
#print ipList
#for a in ipList:
# print(a)