首页 > 编程语言 > 详细

python3 调用淘宝接口查询IP所在地

时间:2020-01-14 16:20:14      阅读:99      评论:0      收藏:0      [点我收藏+]

学习python中,突然想做一道练习题。编写python查询ip来源信息。网上也参考了一些,

主要参考了:https://blog.51cto.com/10321203/2387650?source=dra

运行环境:

python3

国内查询ip地址:http://ip.taobao.com//service/getIpInfo.php?ip=

格式:

{"code":0,"data":{"ip":"171.213.8.140","country":"中国","area":"","region":"四川","city":"成都","county":"XX","isp":"电信","country_id":"CN","area_id":"","region_id":"510000","city_id":"510100","county_id":"xx","isp_id":"100017"}}

 

国外查询ip地址:http://ip-api.com/json/

格式:

{"status":"success","country":"China","countryCode":"CN","region":"SC","regionName":"Sichuan","city":"Chengdu","zip":"","lat":30.6667,"lon":104.0667,"timezone":"Asia/Shanghai","isp":"Chinanet","org":"Chinanet SC","as":"AS4134 No.31,Jin-rong Street","query":"171.213.8.140"}

 

直接上代码:

#!/usr/bin/env python3  
# -*- coding:utf-8 -*-
import requests
import sys

IP = input("请输入:");

def git_ip_info(ip):
    url ="http://ip.taobao.com//service/getIpInfo.php?ip=" + IP
    url2 = "http://ip-api.com/json/" + IP
    try:
        res = requests.get(url)
        res2 = requests.get(url2)
    except :
        print("连接出现异常啦!请在网页端确定URL可用")
    
    else:

        if res.json()[code] ==0 :
            i = res.json()[data]
            country = i[country]
            area = i[area]
            region = i[region]
            city = i[city]
            isp = i[isp]

            print("******************************")
            print("您查询的ip地址 %s  来源是:" %res)
            print("国家:%s" %country)
            print("区域:%s" %area)
            print("省份:%s" %region)
            print("城市: %s" %city)
            print("运营商: %s" %isp)
            print("数据来源是淘宝IP地址库")
            print("******************************")

            strpp={}
            strpp=res2.json()
            print("*******************************")
            print("您查询的IP地址 %s 来源是:"%(strpp.get(query)))
            print("国家:%s"%(strpp.get(country)))
            print("城市:%s"%(strpp.get(city)))
            print("经纬度坐标:%s,%s"%(strpp.get(lat),strpp.get(lon)))
            print("运营商编号:%s"%(strpp.get(as)))
            print("ISP服务商:%s"%(strpp.get(isp)))
            print("********************************")
        else:
            print("查询过于频繁会被主机拒绝连接,请重新运行!")

ip = {ip:IP}
git_ip_info(ip)

 

运行截图:

技术分享图片

python3 调用淘宝接口查询IP所在地

原文:https://www.cnblogs.com/llody/p/12191995.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!