1、淘宝
http://ip.taobao.com/service/getIpInfo2.php
用post请求上面的接口
python代码示例
import requests r = requests.post(url='http://ip.taobao.com/service/getIpInfo2.php', data={'ip': 'myip'}) print(r.json()) # {'code': 0, 'data': {'ip': '59.164.141.201', 'country': '中国', 'area': '', 'region': '湖北', 'city': '武汉', 'county': 'XX', 'isp': '电信', 'country_id': 'CN', 'area_id': '', 'region_id': '420000', 'city_id': '420100', 'county_id': 'xx', 'isp_id': '100017'}}
这个好像有限制调用频率
建议使用 http://ip-api.com/json/?lang=zh-CN
2.IP地址查询接口:http://apis.juhe.cn/ip/ip2addr
要先去https://www.juhe.cn/docs/api/…申请APPKEY
3.搜狐IP地址查询接口(默认GBK):http://pv.sohu.com/cityjson
4.搜狐IP地址查询接口(可设置编码):http://pv.sohu.com/cityjson?i…
5.搜狐另外的IP地址查询接口:http://txt.go.sohu.com/ip/soip
http://ip.taobao.com/service/getIpInfo.php?ip=
1.请求接口(GET):
http://ip.taobao.com/service/getIpInfo.php?ip=[ip地址字串]
2.响应信息:
(json格式的)国家 、省(自治区或直辖市)、市(县)、运营商
3.返回数据格式:
{ "data": { "area": "", "country": "中国", "isp_id": "100017", "queryIp": "175.9.142.21", "city": "长沙", "ip": "175.9.142.21", "isp": "电信", "county": "", "region_id": "430000", "area_id": "", "county_id": null, "region": "湖南", "country_id": "CN", "city_id": "430100" }, "msg": "query success", "code": 0 }
接口说明
1. 请求接口(GET,POST):
/outGetIpInfo?ip=[ip地址字串]&accessKey=[访问密匙]
2. 响应信息:
(json格式的)国家 、省(自治区或直辖市)、市(县)、运营商
3. 返回数据格式:
{"code":0,"data":{"ip":"210.75.225.254","country":"\u4e2d\u56fd","area":"\u534e\u5317", "region":"\u5317\u4eac\u5e02","city":"\u5317\u4eac\u5e02","county":"","isp":"\u7535\u4fe1", "country_id":"86","area_id":"100000","region_id":"110000","city_id":"110000", "county_id":"-1","isp_id":"100017"}}
其中code的值的含义为,0:成功,1:服务器异常,2:请求参数异常,3:服务器繁忙,4:个人qps超出。
访问限制
为了保障服务正常运行,每个用户的访问频率需小于1qps。
接口说明页:https://ip.taobao.com/restrictions
http://ip-api.com/json/ # 国际化英文显示
http://ip-api.com/json/?lang=zh-CN # 中文显示
http://ip-api.com/json/115.191.200.34?lang=zh-CN # 查询某个ip的信息
免费的一分钟可以查询45次,不能使用https调用,付费的一个月100多,可以使用https
https://whois.pconline.com.cn/
调用方法
https://whois.pconline.com.cn/ipJson.jsp?json=true
https://whois.pconline.com.cn/ipJson.jsp?json=true&ip=221.198.239.124
@param ip:可指定IP地址,不指定则取request.getRemoteAddr()的值。
@param json:可指定是否以json格式输出结果,不指定则默认为false。
可以用来查询真实IP信息返回json
{
"ip":"221.198.239.124",
"pro":"天津市",
"proCode":"120000",
"city":"天津市",
"cityCode":"120000",
"region":"南开区",
"regionCode":"120104",
"addr":"天津市南开区 联通ADSL",
"regionNames":"",
"err":""
}
示例代码:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>欢迎来到我的网页</title> <meta name="referrer" content="no-referrer" /> </head> <body> <h1>欢迎来到我的网页</h1> <p>测试国内用户是否跳转</p> <script type="text/javascript"> function smldhz(json){ var err = json["err"]; //获取错误信息 if (err !== "noprovince"){ window.location.href='https://cn.bing.com' } } </script> <script type="text/javascript" src="https://whois.pconline.com.cn/ipJson.jsp?callback=smldhz"></script> </body> </html>
注意:解决跨域问题
在head部分加上以下代码,解决跨域问题,否则可能失败:
<meta name="referrer" content="no-referrer" />
https://www.ipip.net/
收费的,没有测试
测试了淘宝和太平洋的,IP不太准确,和IP138的不一致,ip-api.com的是新的归属,使用有限制
【版权声明】
本站部分内容来源于互联网,本站不拥有所有权,不承担相关法律责任。如果发现本站有侵权的内容,欢迎发送邮件至masing@13sy.com 举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。