zoukankan      html  css  js  c++  java
  • python绝技 — 使用PyGeoIP关联IP地址和物理位置

    准备工作

    要关联IP与物理位置,我们需要有一个包含这样对应关系的数据库。

    我们可以使用开源数据库GeoLiteCity,它能够较为准确地把IP地址与所在城市关联起来

    下载地址:http://dev.maxmind.com/geoip/legacy/geolite/

    下载之后我们解压:xz -d GeoLiteCity.dat.xz,如:/My/lib/ip/GeoLiteCity.dat

    安装pygeoip库。这个库用于对GeoLiteCity数据库的查询 

    代码:

    #!/usr/bin/python
    #--*--coding=utf-8--*--
    
    import pygeoip
    
    gi = pygeoip.GeoIP('/My/lib/ip/GeoLiteCity.dat')
    
    def printRecord(tgt):
    	rec = gi.record_by_addr(tgt)
    	city = rec['city']
    	region = rec['region_code']
    	country = rec['country_name']
    	long = rec['longitude']
    	lat = rec['latitude']
    	print '[*] 主机: ' + tgt + ' Geo-located.'
    	print '[+] ' + str(city) + ', ' +str(region)+', '+str(country)
    	print '[+] 经度: '+str(lat)+', 维度: '+ str(long)
    
    tgt = '183.141.110.74'
    printRecord(tgt)
    

    183.141.110.74是随便找的一个代理ip地址,查查看地址:

    查询结果

  • 相关阅读:
    MySQL快速入门
    关系模型
    从Qt到PyQt
    Qt 绘图与动画系统
    Django请求响应对象
    Django控制器
    Django模板
    第一个Django项目
    图的存储与遍历
    AOE网与AOV网
  • 原文地址:https://www.cnblogs.com/ssooking/p/6097436.html
Copyright © 2011-2022 走看看