ip2location facebbook  ip2location twitter  ip2location google+ ip2location github

Haskell Package

This package is the Haskell programming language package to support all IP2Location™ database products. It has been optimized for speed and memory utilization. Developers can use the package to query all IP2Location™ binary databases for applications written using the Haskell programming language.

Hackage: https://hackage.haskell.org/package/ip2location GitHub Repository: https://github.com/ip2location/ip2location-haskell

 

Installation
    cabal install IP2Location
Sample Codes
import IP2Location

main :: IO ()
main = do
    let myfile = "IPV6-COUNTRY-REGION-CITY-LATITUDE-LONGITUDE-ZIPCODE-TIMEZONE-ISP-DOMAIN-NETSPEED-AREACODE-WEATHER-MOBILE-ELEVATION-USAGETYPE.BIN"
    meta <- doInit myfile
    result <- doQuery myfile meta "8.8.8.8"
    putStrLn $ "country_short: " ++ (show (country_short result))
    putStrLn $ "country_long: " ++ (show (country_long result))
    putStrLn $ "region: " ++ (show (region result))
    putStrLn $ "city: " ++ (show (city result))
    putStrLn $ "isp: " ++ (show (isp result))
    putStrLn $ "latitude: " ++ (show (latitude result))
    putStrLn $ "longitude: " ++ (show (longitude result))
    putStrLn $ "domain: " ++ (show (domain result))
    putStrLn $ "zipcode: " ++ (show (zipcode result))
    putStrLn $ "timezone: " ++ (show (timezone result))
    putStrLn $ "netspeed: " ++ (show (netspeed result))
    putStrLn $ "iddcode: " ++ (show (iddcode result))
    putStrLn $ "areacode: " ++ (show (areacode result))
    putStrLn $ "weatherstationcode: " ++ (show (weatherstationcode result))
    putStrLn $ "weatherstationname: " ++ (show (weatherstationname result))
    putStrLn $ "mcc: " ++ (show (mcc result))
    putStrLn $ "mnc: " ++ (show (mnc result))
    putStrLn $ "mobilebrand: " ++ (show (mobilebrand result))
    putStrLn $ "elevation: " ++ (show (elevation result))
    putStrLn $ "usagetype: " ++ (show (usagetype result))

 

Sample IP2Location Databases (BIN)

The following evaluation copy of the database file has limited range of IP address information compare to commercial. For evaluation purpose, you can query IP addresses from 0.0.0.0-99.255.255.255 (IPv4) or 2A04:0:0:0:0:0:0:0-2A04:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF (IPv6).

Sample Packages IPv4 IPv6
IP2Location DB1 Sample Bin File706.48 kB350.84 kB
IP2Location DB2 Sample Bin File38.82 MB378.66 kB
IP2Location DB3 Sample Bin File18.05 MB363.65 kB
IP2Location DB4 Sample Bin File53.84 MB388.27 kB
IP2Location DB5 Sample Bin File28.07 MB370.18 kB
IP2Location DB6 Sample Bin File63.64 MB393.44 kB
IP2Location DB7 Sample Bin File60.06 MB398.64 kB
IP2Location DB8 Sample Bin File70.06 MB403.55 kB
IP2Location DB9 Sample Bin File32.59 MB373.45 kB
IP2Location DB10 Sample Bin File75.45 MB408.65 kB
IP2Location DB11 Sample Bin File33.26 MB374.17 kB
IP2Location DB12 Sample Bin File76.00 MB409.59 kB
IP2Location DB13 Sample Bin File31.95 MB371.65 kB
IP2Location DB14 Sample Bin File77.34 MB410.29 kB
IP2Location DB15 Sample Bin File36.10 MB378.07 kB
IP2Location DB16 Sample Bin File81.84 MB415.93 kB
IP2Location DB17 Sample Bin File38.88 MB380.09 kB
IP2Location DB18 Sample Bin File89.07 MB425.95 kB
IP2Location DB19 Sample Bin File72.71 MB404.88 kB
IP2Location DB20 Sample Bin File91.35 MB427.07 kB
IP2Location DB21 Sample Bin File39.45 MB380.72 kB
IP2Location DB22 Sample Bin File95.59 MB430.11 kB
IP2Location DB23 Sample Bin File73.14 MB405.90 kB
IP2Location DB24 Sample Bin File96.44 MB431.79 kB