python 通过淘宝IP数据库查询地区

简介:

API 的地址是 http://ip.taobao.com/service/getIpInfo.php?ip=你需要查询的IP


{"code":0,"data":{"country":"\u4e2d\u56fd","country_id":"CN","area":"\u897f\u5357","area_id":"500000","region":"\u56db\u5ddd\u7701","region_id":"510000","city":"\u7ef5\u9633\u5e02","city_id":"510700","county":"","county_id":"-1","isp":"\u8054\u901a","isp_id":"100026","ip":"221.10.97.147"}}


上面就是我查询我现在所在的外网地址得出来的

(json格式的)国家 、省(自治区或直辖市)、市(县)、运营商

其中code的值的含义为,0:成功,1:失败。

country:国家

area:地区

region:所在省份

city:所在城市

county:县

isp:运营商


然后 得到的数据是经过 unicode 编码的 然后获取实际的数据需要解码

python 解码方面可以参考这里

http://luchanghong.com/python/2012/07/06/python-encoding-with-unicode-and-gbk-and-utf8.html


然后就根据需要提取内容就好了 写个例子


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import  urllib
import  json
def  ipInfo(ipaddress):
     url  =  'http://ip.taobao.com/service/getIpInfo.php?ip='  +  ipaddress
     page  =  urllib.urlopen(url)
     data  =  page.read()
     jsondata  =  json.loads(data)
     if  jsondata[u 'code' = =  0 :
         print  '所在国家:'  +  jsondata[u 'data' ][u 'country' ].encode( 'utf-8' )
         print  '所在地区:'  +  jsondata[u 'data' ][u 'area' ].encode( 'utf-8' )
         print  '所在省份:'  +  jsondata[u 'data' ][u 'region' ].encode( 'utf-8' )
         print  '所在城市:'  +  jsondata[u 'data' ][u 'city' ].encode( 'utf-8' )
         print  '所用运营商:'  +  jsondata[u 'data' ][u 'isp' ].encode( 'utf-8' )
     else :
         print  '查询失败 请检查IP 后再说'

只是简单的获取数据 解析数据而已


本文转自    拖鞋崽      51CTO博客,原文链接:http://blog.51cto.com/1992mrwang/1206673

相关文章
|
1天前
|
SQL 关系型数据库 MySQL
MySQL数据库的约束+进阶版新增与查询-2
MySQL数据库的约束+进阶版新增与查询
11 1
|
2天前
|
JSON 数据格式 索引
python之JMESPath:JSON 查询语法库示例详解
python之JMESPath:JSON 查询语法库示例详解
13 0
|
4天前
|
SQL 数据库
SQL数据库基础语法-查询语句
SQL数据库基础语法-查询语句
|
4天前
|
开发者 Python
在Python中查询进程信息的实用指南
在Python中查询进程信息的实用指南
9 2
|
4天前
|
存储 监控 Apache
查询提速11倍、资源节省70%,阿里云数据库内核版 Apache Doris 在网易日志和时序场景的实践
网易的灵犀办公和云信利用 Apache Doris 改进了大规模日志和时序数据处理,取代了 Elasticsearch 和 InfluxDB。Doris 实现了更低的服务器资源消耗和更高的查询性能,相比 Elasticsearch,查询速度提升至少 11 倍,存储资源节省达 70%。Doris 的列式存储、高压缩比和倒排索引等功能,优化了日志和时序数据的存储与分析,降低了存储成本并提高了查询效率。在灵犀办公和云信的实际应用中,Doris 显示出显著的性能优势,成功应对了数据增长带来的挑战。
查询提速11倍、资源节省70%,阿里云数据库内核版 Apache Doris 在网易日志和时序场景的实践
|
9天前
|
SQL 关系型数据库 MySQL
【MySQL-5】DDL的数据库操作:查询&创建&删除&使用(可cv代码+演示图)
【MySQL-5】DDL的数据库操作:查询&创建&删除&使用(可cv代码+演示图)
|
10天前
|
存储 SQL 缓存
构建高效的矢量数据库查询:查询语言与优化策略
【4月更文挑战第30天】本文探讨了构建高效矢量数据库查询的关键点,包括设计简洁、表达性强的查询语言,支持空间操作、函数及索引。查询优化策略涉及查询重写、索引优化、并行处理和缓存机制,以提升查询效率和准确性。这些方法对处理高维空间数据的应用至关重要,随着技术进步,矢量数据库查询系统将在更多领域得到应用。
|
10天前
|
SQL 缓存 监控
如何在数据库查询中使用参数化查询?
【4月更文挑战第30天】如何在数据库查询中使用参数化查询?
21 1
|
10天前
|
存储 SQL 关系型数据库
mysql查询数据库表大小怎么操作
mysql查询数据库表大小怎么操作
|
11天前
|
缓存 关系型数据库 MySQL
研优化数据库查询性能
研优化数据库查询性能
23 0