方式1:通过请求查询接口获取ip归属地,比较慢,因为要一个一个去发送请求。
def ipQuery(ip):
# 淘宝api接口
url = "/outGetIpInfo?ip={}&accessKey=alibaba-inc".format(ip)
req = (url).text
json1 = (req)
print(json1)
country = json1["data"]["country"] # 国
province = json1["data"]["region"] # 省
city = json1["data"]["city"] # 市
return "{}-{}-{}".format(country, province, city)
# ip-api接口
# url = "/json/111.121.64.21?lang=zh-CN"
# country = json1["country"] # 国
# province = json1["regionName"] # 省
# city = json1["city"] # 市
# print("{}-{}-{}".format(country, province, city))
# 太平洋api接口
# url = "/?ip=111.121.64.21&json=true"
# province = json1["pro"] # 省
# city = json1["city"] # 市
# print("{}-{}".format(province, city))
ipQuery("8.8.8.8")
方式2:通过第三方库qqwry来请求接口,推荐,速度超快,需要将纯真ip数据库下载到本地。
from qqwry import QQwry
from qqwry import updateQQwry
q = QQwry()
# 自动更新纯真ip数据库
num = updateQQwry('')
print(num)
# 文件名称
q.load_file('')
# 获取数据库的版本日期
version = q.get_lastone()
print(version)
# 查询ip归属地
result = ('1.204.117.217')
print(result)