Ejemplo n.º 1
0
    def getZIP(ip, redisConn):
        """
        Get a zipcode location object based on an IP
        will return None if you are outside the US
        """

        range = IPRange.get(ip, redisConn)
        
        if not range or not re.match('^[0-9]{5}$', range.zipcode):
            return None

        return ZIPCode.load('ZIPCode:%s' % range.zipcode, redisConn)
Ejemplo n.º 2
0
    def getCity(ip, redisConn):
        """
        Get location object by resolving an IP address
        @param ip IPv4 address string (e.g. 127.0.0.1)
        @oaram redisConn redis connection to the database
        @return a Location object if we can resolve this ip, else None
        """

        range = IPRange.get(ip, redisConn)
        if not range:
            return None

        

        #load a location by the
        return City.getByGeohash(hasher.encode(range.lat, range.lon), redisConn)
Ejemplo n.º 3
0
def resolveIP(ip):
    global redis_host, redis_port, redis_db
    loc = IPRange.get(ip, r)
    print loc