`

python访问纯真IP数据库

阅读更多
通过IP地址判断客户端是网通的还是电信的。
使用一个纯文本的IP纯真数据库,用Python写了一个小程序。

核心代码:
  1. #!/usr/bin/env python  
  2. #site www.jbxue.com  
  3.   
  4. # -*- coding: utf-8 -*-   
  5.   
  6. from bisect import bisect   
  7.   
  8. _LIST1, _LIST2 = [], []   
  9. _INIT = False   
  10.   
  11. ip2int = lambda ip_str: reduce(lambda a, b: (a << 8) + b, [int(i) for i in ip_str.split('.')])   
  12.   
  13. def _init():   
  14. global _LIST, _INIT   
  15. if not _INIT:   
  16. for l in open('ipdata.txt''rb'):   
  17. ip1, ip2 = l.split()[:2]   
  18. addr = ' '.join(l.split()[2:])   
  19. ip1, ip2 = ip2int(ip1), ip2int(ip2)   
  20. _LIST1.append(ip1)   
  21. _LIST2.append((ip1, ip2, addr))   
  22. _INIT = True   
  23.    
  24. def ip_from(ip):   
  25. _init()   
  26. i = ip2int(ip)   
  27. idx = bisect(_LIST1, i)   
  28. assert(idx > 0)   
  29. if len(_LIST1) <= idx:   
  30. return u'unknown ip address %s' % ip   
  31. else:   
  32. frm, to ,addr = _LIST2[idx - 1]   
  33. if frm <= i <= to:   
  34. return addr   
  35. else:   
  36. return u'unknown ip address %s' % ip   
  37.   
  38. if __name__ == '__main__':   
  39. print ip_from('115.238.54.106')   
  40. print ip_from('220.181.29.160')   
  41. print ip_from('115.238.54.107')   
  42. print ip_from('8.8.8.8')   
分享到:
评论

相关推荐

    Python访问纯真IP数据库脚本分享

    ### Python访问纯真IP数据库脚本详解 #### 一、背景与目的 在现代互联网应用中,IP地址作为网络通信的基础标识,对于了解用户位置、网络优化等方面具有重要作用。例如,根据用户的IP地址来判断其所在地区或者所...

    纯真IP数据库 查询IP

    例如,在Python中可以使用第三方库如`ipip.net`来调用纯真IP数据库。 7. 链接资源:说明.txt可能包含了关于如何使用数据库和查询工具的详细说明,而纯真网络.url和QQ互动门户-纯真.url可能是指向更多相关信息或官方...

    Python-纯真IP数据库解析

    纯真IP数据库解析qqwry.dat库文件。 QQWry IP数据库 纯真版收集了包括中国电信、中国移动、中国联通、长城宽带、聚友宽带等 ISP 的最新准确 IP 地址数据。IP数据库每5天更新一次,需要定期更新最新的IP数据库。

    纯真IP数据库使用 Python代码

    本文将详细介绍如何使用Python来操作纯真IP数据库,并进行IP地址的查询。 首先,你需要获取到最新的纯真IP数据库文件,通常是以`.dat`格式提供的。这个文件包含了IP地址范围和对应的地理位置信息。在Python中,我们...

    qqwry.dat纯真ip数据库和自动更新脚本

    纯真IP数据库文件,dat数据非exe安装包,每天会扫描两次(17:55和23:55),当发现更新时也可以选择手动运行来获得文件。 目录说明 1、qqwry.dat 为最新数据直链(即下即用),每次更新会覆盖之前的内容,如果想要...

    纯真Ip数据库(ShowIP

    【纯真IP数据库(ShowIP)详解】 在互联网技术领域,IP数据库扮演着至关重要的角色,尤其是对于网络定位、访问控制、流量分析等应用。其中,“纯真IP数据库”(简称ShowIP)是一款广泛使用的IP地址数据库,它包含了...

    纯真ip数据库,utf-8

    纯真IP数据库是一款被广泛使用的IP地址数据库,主要用于识别和定位中国大陆地区的IP地址。这个数据库由纯真网络提供,包含了详细的IP段与地理位置对应信息,包括省份、城市、运营商等数据,对于开发者来说,它是实现...

    最新纯真ip数据库ACCESS MDB格式

    纯真IP数据库是中国知名的IP地址数据库,由纯真网络提供,包含了中国大陆以及部分国际地区的IP地址段、归属地信息,对于网络应用如地理位置定位、访问控制等具有重要价值。 描述中的“最新纯真IP库,我网站正在使用...

    纯真IP数据库

    9. 兼容性:纯真IP数据库通常提供多种接口供开发者使用,如API、DLL库、Python模块等,以适应不同开发环境和需求。 10. 法律法规:在使用IP数据库时,应注意遵守相关的数据保护和隐私法律法规,不得滥用用户个人...

    纯真ip数据库UTF-8版2009-08-10

    《纯真IP数据库UTF-8版2009-08-10》是一个专为了解决跨平台编码问题而转换的IP地址数据库文件。在IT行业中,IP数据库通常用于定位和识别网络上的设备,尤其是当需要根据IP地址获取对应地理位置信息时。这个特定的...

    2010纯真ip数据库

    标题中的“2010纯真ip数据库”指的是一个IP地址数据库,主要包含2010年时全球的IP地址信息。这个数据库是由“纯真”项目维护的,旨在提供准确的IP到地理位置的映射,帮助用户识别互联网上IP地址所属的国家、地区或者...

    纯真IP数据库官方版本

    纯真IP数据库是中国知名的IP地址库,主要用于提供准确的IP地址到地理位置的映射信息。这个官方版本是针对2012年的数据进行更新维护的,确保了在当时的网络环境中,用户可以获取到最新的IP定位信息。IP数据库是互联网...

    czipdata:适用于Python的纯真IP数据库规范及同步

    压缩数据适用于Python的纯真IP数据库规范和MySQL同步更新GitHub: : Gitee: ://gitee.com/a76yyyy/czipdata功能通过Python实现纯真IP数据库的补充更新,数据库在数据文件夹下;将数据文件解析为txt格式;将数据文件...

    QQwry纯真IP数据库 更新时间2013.12.12

    QQwry纯真IP数据库是一个专门用于识别和定位IP地址的数据库,它包含了大量全球IP地址与地理位置的对应关系。这个数据库的更新日期为2013年12月12日,这意味着它包含了截止到那个时间点的最新IP地理信息。 在IT领域...

    将纯真IP数据库转换为KillQQAd适用IP数据库的工具及方法

    纯真IP数据库则是一个广泛使用的IP地址信息库,包含了大量IP地址与地区、组织等信息的对应关系。本文将详细介绍如何将纯真IP数据库转换为KillQQAd能够识别和利用的格式。 首先,理解纯真IP数据库的结构至关重要。...

    纯真IP数据库(更新至09/05/2008)

    在实际应用中,开发者会将纯真IP数据库集成到他们的应用程序中,通过编程语言如Python、Java、C#等实现IP查询功能。常见的方法是先将数据库加载到内存中,然后通过二分查找或哈希表等高效数据结构,快速查找到给定IP...

    实现纯真IP数据库DAT转mdb数据库的方法

    纯真IP数据库DAT转MDB数据库的过程涉及到网络编程和数据库管理两个关键领域。纯真IP数据库是一种广泛用于IP地址查询的数据库,它包含了IP地址与地理位置的对应关系,通常以DAT格式存储。而MDB数据库则是Microsoft ...

    纯真IP数据库-穿越时空隧道,重拾昔日纯真。

    纯真IP数据库,这个名字在IT行业内有着特殊的意义,它是中国早期互联网时代的一个标志性产品,尤其在IP地址查询领域,堪称经典。"穿越时空隧道,重拾昔日纯真"这一描述,既富有诗意,又暗示了这个数据库历史久远,...

Global site tag (gtag.js) - Google Analytics