两个免费的IP地址查询的API。
http://freeapi.ipip.net/ 国内API接口
http://ip-api.com/json/ 国外API接口
在这两个API后面直接添加像查询的IP地址即可。
例如查询185.1.8.65地址,可以直接:
http://freeapi.ipip.net/185.1.8.65(另外一个网站也可以使用相同的方法)
就可以获取查询到的信息
代码方面,直接采用request请求即可:
我这边使用的是ip-api.com提供的接口,可以获取更多的信息。
请求的response返回后用eval()转换成字典格式就可以获取里面的信息了。
在reponse中第一行包含了获取的状态,可以通过判断的方式检查获取的具体情况。
# IP 信息查询
def check_ip(argv):
url1 = 'http://freeapi.ipip.net/' # 中国网站
url2 = 'http://ip-api.com/json/' # 外国网站
# args = sys.argv[1]
url1 = url1 + argv
url2 = url2 + argv
response = requests.get(url1)
response2 = requests.get(url2)
print(response.text)
print(response2.text)
f = eval(response2.text)
print("所属国家"+f['country'])
print("国家代码 "+f['countryCode'])
print("地区 "+f['region'])
print("地区 "+f['regionName'])
print("城市 "+f['city'])
print("(经度,维度) "+str(f['lon'])+" "+str(f['lat']))
print("时区 "+f['timezone'])
print("isp "+f['isp'])
print("组织 "+f['org'])