目前做一个项目,需要判断是国内还是国外的IP,具体要求为接口稳定,速度快,免费,不异常
,所以我整理了优质的接口供大家筛选。
IP归属地查询API
一,淘宝API接口
http://ip.taobao.com/service/getIpInfo.php?ip=[ip地址字串]
在ip
参数中添加你要查询的ip
,数据报道查看为json
格式。包括国家地区运营商等数据。
{"code":0,"data":{"ip":"221.218.209.125","country":"中国","area":"","region":"北京","city":"北京","county":"XX","isp":"联通","country_id":"CN","area_id":"","region_id":"110000","city_id":"110100","county_id":"xx","isp_id":"100026"}}
测评结果:
查询到: 110 未查询到: 0 报错: 890 执行时间 314.29S
二,IP-API接口
调用可以http://ip-api.com/json/
接口查询域名,默认为当前请求的IP
。
# 国际化英文显示
http://ip-api.com/json/
# 修改语言编码
http://ip-api.com/json/?lang=zh-CN
# 修改IP信息
http://ip-api.com/json/115.191.200.34?lang=zh-CN
数据报道查看为json
格式。包括国家地区运营商等数据。
{"as":"AS6106 University of California, Riverside","city":"里弗赛德","country":"美国","countryCode":"US","isp":"University of California, Riverside","lat":33.9473,"lon":-117.4008,"org":"University of California, Riverside","query":"169.235.24.133","region":"CA","regionName":"加利福尼亚州","status":"success","timezone":"America/Los_Angeles","zip":"92521"}
测评结果:
没有测试完,应该是有调用量限制,不过一开始查询比淘宝快。
三,搜狐IP地址查询
http://pv.sohu.com/cityjson
# 设置编码
http://pv.sohu.com/cityjson?ie=utf-8
当前只能查到区域信息,数据划分不是很明确:
var returnCitySN = {"cip": "221.218.209.125", "cid": "110108", "cname": "北京市海淀区"};
四,太平洋IP地址查询
太平洋IP地址库API接口为:
http://whois.pconline.com.cn/ipJson.jsp?ip=xxx.xxx.xxx.xxx&json=true
查询到数据如下:
{"ip":"221.218.209.125","pro":"北京市","proCode":"110000","city":"北京市","cityCode":"110000","region":"海淀区","regionCode":"110108","addr":"北京市海淀区 联通ADSL","regionNames":"","err":""}
太平洋IP查询的更多接入方式查看http://whois.pconline.com.cn/
测试结果:
查询到: 1000 未查询到: 0 报错: 0 执行时间 68.51S
调用了三个接口,淘宝那个接口好用,但是对查询的频率有限制,瑕疵有点大,特意增加后面的两个接口,防止查询多次查询不出来的结果。