免费的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 相关文章推荐
GD输出汉字的函数的分析
Oct 09 PHP
模仿OSO的论坛(三)
Oct 09 PHP
php 数学运算验证码实现代码
Oct 11 PHP
《PHP编程最快明白》第三讲:php数组
Nov 01 PHP
那些年一起学习的PHP(二)
Mar 21 PHP
PHP数组循环操作详细介绍 附实例代码
Feb 03 PHP
PHP实现手机号码中间四位用星号(*)隐藏的自定义函数分享
Sep 27 PHP
PHP中使用Imagick操作PSD文件实例
Jan 26 PHP
Thinkphp+smarty+uploadify实现无刷新上传
Jul 30 PHP
PHP内置函数生成随机数实例
Jan 18 PHP
PDO::commit讲解
Jan 27 PHP
PHP Ajax跨域问题解决方案代码实例
Aug 01 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
用PHP进行MySQL删除记录操作代码
2008/06/07 PHP
PHP微框架Dispatch简介
2014/06/12 PHP
php smarty truncate UTF8乱码问题解决办法
2014/06/13 PHP
PHP中的日期加减方法示例
2014/08/21 PHP
php格式化日期实例分析
2014/11/12 PHP
PHP实现mysqli批量执行多条语句的方法示例
2017/07/22 PHP
js中访问html中iframe的文档对象的代码[IE6,IE7,IE8,FF]
2011/01/08 Javascript
javascript 实现简单的table排序及table操作练习
2012/12/28 Javascript
jQuery中parent()方法用法实例
2015/01/07 Javascript
javascript实现对表格元素进行排序操作
2015/11/18 Javascript
JavaScript+canvas实现七色板效果实例
2016/02/18 Javascript
搭建Bootstrap离线文档的方法
2016/12/02 Javascript
JS实现一次性弹窗的方法【刷新后不弹出】
2016/12/26 Javascript
javascript设计模式之中介者模式学习笔记
2017/02/15 Javascript
AngularJS 支付倒计时功能实现思路
2017/06/05 Javascript
vue2.0的contextmenu右键弹出菜单的实例代码
2017/07/24 Javascript
javascript中关于类型判断的一些疑惑小结
2018/10/14 Javascript
了解重排与重绘
2019/05/29 Javascript
vue实现移动端项目多行文本溢出省略
2020/07/29 Javascript
vue+ElementUI 关闭对话框清空验证,清除form表单的操作
2020/08/06 Javascript
[03:06]3分钟带你回顾DOTA2完美盛典&完美大师赛
2017/12/06 DOTA
分享一下Python数据分析常用的8款工具
2018/04/29 Python
python获取指定字符串中重复模式最高的字符串方法
2018/06/29 Python
详解基于Jupyter notebooks采用sklearn库实现多元回归方程编程
2020/03/25 Python
Python实现常见的几种加密算法(MD5,SHA-1,HMAC,DES/AES,RSA和ECC)
2020/05/09 Python
Python脚本实现监听服务器的思路代码详解
2020/05/28 Python
基于logstash实现日志文件同步elasticsearch
2020/08/06 Python
python进行二次方程式计算的实例讲解
2020/12/06 Python
Django中如何用xlwt生成表格的方法步骤
2021/01/31 Python
html5 Canvas实现图片旋转的示例
2018/01/15 HTML / CSS
加拿大奢华时装品牌:Mackage
2018/01/10 全球购物
"引用"与指针的区别是什么
2016/09/07 面试题
5.12护士节演讲稿
2014/04/30 职场文书
银行反洗钱宣传活动总结
2015/05/08 职场文书
Redis性能监控的实现
2021/07/09 Redis
Python中npy和mat文件的保存与读取
2022/04/24 Python