免费的ip数据库淘宝IP地址库简介和PHP调用实例


Posted in PHP onApril 08, 2014

一、关于淘宝IP地址库

我们目前提供的服务包括:
1. 根据用户提供的IP地址,快速查询出该IP地址所在的地理信息和地理相关的信息,包括国家、省、市和运营商。
2. 用户可以根据自己所在的位置和使用的IP地址更新我们的服务内容。
我们的优势:
1. 提供国家、省、市、县、运营商全方位信息,信息维度广,格式规范。
2. 提供完善的统计分析报表,省准确度超过99.8%,市准确度超过96.8%,数据质量有保障。

二、接口说明

1. 请求接口(GET):
http://ip.taobao.com/service/getIpInfo.php?ip=[ip地址字串]
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:失败。

注意:为了保障服务正常运行,每个用户的访问频率需小于10qps。

三、IP库包含数据

1. IP数量统计

 

2. IP准确度、覆盖度统计

 

四、IP库能干些什么事情?

1.提醒用户不在常用地登录
2.全球报表
3.全国性报表
4.按提供商来做全国报表
5.按地区来统计提供商
6.其它

五、PHP调用实例

<?php
/** 
 * 获取用户真实 IP 
 */ 
function getIP(){ 
    static $realip; 
    if (isset($_SERVER)){ 
        if (isset($_SERVER["HTTP_X_FORWARDED_FOR"])){ 
            $realip = $_SERVER["HTTP_X_FORWARDED_FOR"]; 
        } else if (isset($_SERVER["HTTP_CLIENT_IP"])) { 
            $realip = $_SERVER["HTTP_CLIENT_IP"]; 
        } else { 
            $realip = $_SERVER["REMOTE_ADDR"]; 
        } 
    }else { 
        if (getenv("HTTP_X_FORWARDED_FOR")){ 
            $realip = getenv("HTTP_X_FORWARDED_FOR"); 
        } else if (getenv("HTTP_CLIENT_IP")) { 
            $realip = getenv("HTTP_CLIENT_IP"); 
        } else { 
            $realip = getenv("REMOTE_ADDR"); 
        } 
    }   
    return $realip; 
}   
/**
* 获取 IP 地理位置
* 淘宝IP接口
* @Return: array
*/
function getCity($ip)
{
 $url="http://ip.taobao.com/service/getIpInfo.php?ip=".$ip;
 $ip=json_decode(file_get_contents($url));
 if((string)$ip->code=='1'){
 return false;
 }
 $data = (array)$ip->data;
 return $data;
}
print_r(getCity('123.22.34.213'));
?>

六:C#调用实例

TaobaoIP result1 = TaobaoIPHelper.GetIP("8.8.8.8");
if (result1.code == 0)
{
    Console.WriteLine(string.Format("调用成功。该ip的国家为{0},省份为{1},城市为{2},运营商为{3}"
        , result1.data.country, result1.data.region, result1.data.city, result1.data.isp)
        );
}
else
{
    Console.WriteLine("失败,原因为:"+result1.errorMsg);
}
TaobaoIP[] result2 = TaobaoIPHelper.GetDomain("lixin.me");
foreach (TaobaoIP item in result2)
{
    if (item.code == 0)
    {
        Console.WriteLine(string.Format("调用成功。该ip的国家为{0},省份为{1},城市为{2},运营商为{3}"
        , item.data.country, item.data.region, item.data.city, item.data.isp)
        );
    }
    else
    {
        Console.WriteLine("失败,原因为:" + item.errorMsg);
    }
}
PHP 相关文章推荐
PHP5中的this,self和parent关键字详解教程
Mar 19 PHP
PHP 长文章分页函数 带使用方法,不会分割段落,翻页在底部
Oct 22 PHP
国外PHP程序员的13个好习惯小结
Feb 20 PHP
PHP fastcgi模式上传大文件(大约有300多K)报错
Sep 28 PHP
yii,CI,yaf框架+smarty模板使用方法
Dec 29 PHP
PHP编写登录验证码功能 附调用方法
May 19 PHP
Yii的Srbac插件用法详解
Jul 14 PHP
php结合md5的加密解密算法实例
Sep 30 PHP
Yii框架防止sql注入,xss攻击与csrf攻击的方法
Oct 18 PHP
PHP使用strrev翻转中文乱码问题的解决方法
Jan 13 PHP
php数组实现根据某个键值将相同键值合并生成新二维数组的方法
Apr 26 PHP
PHP基于回溯算法解决n皇后问题的方法示例
Nov 07 PHP
2个自定义的PHP in_array 函数,解决大量数据判断in_array的效率问题
Apr 08 #PHP
PHP设计模式之观察者模式(Observer)详细介绍和代码实例
Apr 08 #PHP
关于PHP的curl开启问题探讨
Apr 08 #PHP
PHP中Session引起的脚本阻塞问题解决办法
Apr 08 #PHP
PHP中比较两个字符串找出第一个不同字符位置例子
Apr 08 #PHP
PHP用星号隐藏部份用户名、身份证、IP、手机号等实例
Apr 08 #PHP
php实现telnet功能示例
Apr 08 #PHP
You might like
在线短消息收发的程序,不用数据库
2006/10/09 PHP
php输入流php://input使用示例(php发送图片流到服务器)
2013/12/25 PHP
JavaScript创建命名空间的5种写法
2014/06/24 PHP
浅析PHP反序列化中过滤函数使用不当导致的对象注入问题
2020/02/15 PHP
CSS心形加载的动画源码的实现
2021/03/09 HTML / CSS
jQuery中remove()方法用法实例
2014/12/25 Javascript
Javascript实现字数统计
2015/07/03 Javascript
jQuery mobile 移动web(4)
2015/12/20 Javascript
jQuery的框架介绍
2016/05/11 Javascript
使用jQuery中的wrap()函数操作HTML元素的教程
2016/05/24 Javascript
自己封装的一个简单的倒计时功能实例
2016/11/23 Javascript
Vue组件tree实现树形菜单
2017/04/13 Javascript
Nuxt.js踩坑总结分享
2018/01/18 Javascript
vue 设置路由的登录权限的方法
2018/07/03 Javascript
JavaScript实现的级联算法示例【省市二级联动功能】
2018/12/25 Javascript
如何用RxJS实现Redux Form
2018/12/29 Javascript
理理Vue细节(推荐)
2019/04/16 Javascript
layui表格内容溢出的解决方法
2019/09/06 Javascript
Linux 下 Python 实现按任意键退出的实现方法
2016/09/25 Python
用Django实现一个可运行的区块链应用
2018/03/08 Python
基于DataFrame筛选数据与loc的用法详解
2018/05/18 Python
Flask框架通过Flask_login实现用户登录功能示例
2018/07/17 Python
python画图把时间作为横坐标的方法
2019/07/07 Python
Python浮点数四舍五入问题的分析与解决方法
2019/11/19 Python
Python3 虚拟开发环境搭建过程(图文详解)
2020/01/06 Python
django有外键关系的两张表如何相互查找
2020/02/10 Python
Python实现RabbitMQ6种消息模型的示例代码
2020/03/30 Python
Django如何批量创建Model
2020/09/01 Python
Python 测试框架unittest和pytest的优劣
2020/09/26 Python
PyCharm2020.3.2安装超详细教程
2021/02/08 Python
师范生的个人求职信范文
2014/01/04 职场文书
环保倡议书400字
2014/05/15 职场文书
2014年信访工作总结
2014/11/17 职场文书
2015年销售员工作总结范文
2015/04/07 职场文书
办公室年度工作总结2015
2015/05/21 职场文书
学习委员竞选稿
2015/11/20 职场文书