抓取taobao的IP库

目的

和地理位置相关的应用、和智能调度相关的应用、都离开一个准确的IP库,如果是单个ip库查询,我们可以去ip138或者ip.taobao.com或者ipip.net或者其他站长工具查询,但是需要我们需要一个完整的ip库,则可能需要自己去抓取一份、或者购买商业的ip库。
最近试着用go语言写一份抓取完整ip库的程序、数据源是ip.taobao.com。从各大州ip地址中心获取最初的ip分段、依次对各个ip段进行探测和验证、生成了一份ip库数据。对于简单的应用完全可以使用。

原理

对于原始的IP段,采用如下的思路确定ip段的具体位置信息。
1、从ip.taobao.com 获取ip段首个ip的信息
2、获取ip段最后一个ip的信息。
3、获取中间ip的信息。
4、如果第一个、最后一个、中间一个ip的在省份级别是相同的,则认为此ip段是一个完整的ip段,地理信息就是抓取的信息。
5、如果三个ip不相同,则递归探测第一个ip到中间ip这个ip段。以及中间ip的下一个到最后一个ip的ip段。
6、直到所有ip段都已经探测完毕。

代码:

https://github.com/zhiyuan2007/getiplib

以下是从抓取的数据中分析的结果

国家举例

AD|安道尔共和国
AE|阿拉伯联合酋长国
AF|阿富汗
AG|安提瓜和巴布达
AI|安圭拉
AL|阿尔巴尼亚
AM|亚美尼亚
AO|安哥拉
AQ|南极洲
AR|阿根廷

运营商举例

1000102|飞华领航
1000103|国研网
1000104|金桥网
1000106|神州在线
1000109|首信网
1000114|中国科技网
1000117|中信网络
1000118|京宽网络

省份举例

110000|北京市
120000|天津市
130000|河北省
140000|山西省
150000|内蒙古自治区
210000|辽宁省
220000|吉林省
230000|黑龙江省
310000|上海市
320000|江苏省
330000|浙江省
340000|安徽省

城市举例

110100|北京市
110200|北京市
120100|天津市
130100|石家庄市
130200|唐山市
130300|秦皇岛市
130400|邯郸市
130500|邢台市
130600|保定市
130700|张家口市
130900|沧州市
131000|廊坊市

抓取数据格式举例

1.2.4.0|1.2.4.255|256|中国:CN|中国互联网信息中心:1000189|华北:100000|北京市:110100|北京市:110000
1.2.5.0|1.2.5.255|256|中国:CN|电信:100017|华东:300000|福州市:350100|福建省:350000
1.2.6.0|1.2.7.255|512|中国:CN|电信:100017|华东:300000|福州市:350100|福建省:350000
1.2.8.0|1.2.8.255|256|中国:CN|中国互联网信息中心:1000189|华北:100000|北京市:110100|北京市:110000
1.2.9.0|1.2.9.255|256|中国:CN|电信:100017|华南:800000|广州市:440100|广东省:440000
1.2.10.0|1.2.11.255|512|中国:CN|电信:100017|华南:800000|广州市:440100|广东省:440000
1.2.12.0|1.2.15.255|1024|中国:CN|电信:100017|华南:800000|广州市:440100|广东省:440000
1.2.16.0|1.2.31.255|4096|中国:CN|电信:100017|华南:800000|广州市:440100|广东省:440000
1.2.32.0|1.2.63.255|8192|中国:CN|电信:100017|华南:800000|广州市:440100|广东省:440000
1.2.64.0|1.2.127.255|16384|中国:CN|电信:100017|华南:800000|广州市:440100|广东省:440000
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值