This is a IP2Location Python library that enables the user to find the country, region or state, city, latitude and longitude, ZIP code, time zone, Internet Service Provider (ISP) or company name, domain name, net speed, area code, weather station code, weather station name, mobile country code (MCC), mobile network code (MNC) and carrier brand, elevation, usage type, address type and IAB category by IP address or hostname originates from. The library reads the geo location information from IP2Location BIN data file.
Supported IPv4 and IPv6 address.
For more details, please visit: https://www.ip2location.com/developers/python
- Python 3.5 and above.
- Unzip the package.
- Execute python setup.py build
- Execute python setup.py install
or
To install this module type the following (for PyPI):
pip install IP2Location
You can check the sample.py file to learn more about usage.
Below is the description of the functions available in the BIN Database lookup.
Method Name | Description |
---|---|
open | Open the IP2Location BIN data for lookup. Default mode: File I/O. |
close | Close and clean up the file pointer. |
get_all | Returns the geolocation information in array. |
get_country_short | Returns the ISO3166-1 country code (2-digits) of the IP address. |
get_country_long | Returns the ISO3166-1 country name of the IP address. |
get_region | Returns the ISO3166-2 region name of the IP address. Please visit ISO3166-2 Subdivision Code for the information of ISO3166-2 supported |
get_city | Returns the city name of the IP address. |
get_latitude | Returns the city latitude of the IP address. |
get_longitude | Returns the city longtitude of the IP address. |
get_isp | Returns the ISP name of the IP address. |
get_domain | Returns the domain name of IP address. |
get_zipcode | Returns the zipcode of the city. |
get_timezone | Returns the UTC time zone (with DST supported). |
get_netspeed | Returns the Internet connection type. Please see Internet Connection Type for details. |
get_idd_code | Returns the IDD prefix to call the city from another country. |
get_area_code | Returns the area code of the city. |
get_weather_code | Returns the nearest weather observation station code. |
get_weather_name | Returns the nearest weather observation station name. |
get_mcc | Returns the Mobile Country Codes (MCC). |
get_mnc | Returns the Mobile Network Code (MNC). |
get_mobile_brand | Commercial brand associated with the mobile carrier. Please visit Mobile Carrier Coverage to view the coverage report. |
get_elevation | Returns average height of city above sea level in meters (m). |
get_usage_type | Returns the ISP's usage type of IP address. Please see Usage Type for details. |
get_address_type | Returns the IP address type (A-Anycast, B-Broadcast, M-Multicast & U-Unicast) of IP address or domain name. |
get_category | Returns the IAB content taxonomy category of IP address or domain name. You can get a full list of IAB content taxonomy category from here. |
get_district | Returns the district or county name of IP address. |
get_asn | Returns the Autonomous system number (ASN) of IP address. |
get_as | Returns the Autonomous system (AS) name of IP address. |
Below is the description of the functions available in the Web Service lookup.
Function Name | Description |
---|---|
Constructor | Expect 3 input parameters:
|
lookup | Return the IP information in array.
|
get_credit | Return remaining credit of the web service account. |
Below is the description of the functions available in the IP Tools class.
Function Name | Description |
---|---|
is_ipv4 | Return either true or false. Verify if a string is a valid IPv4 address. |
is_ipv6 | Return either true or false. Verify if a string is a valid IPv6 address. |
ipv4_to_decimal | Translate IPv4 address from dotted-decimal address to decimal format. |
decimal_to_ipv4 | Translate IPv4 address from decimal number to dotted-decimal address. |
ipv6_to_decimal | Translate IPv6 address from hexadecimal address to decimal format. |
decimal_to_ipv6 | Translate IPv6 address from decimal number into hexadecimal address. |
ipv4_to_cidr | Convert IPv4 range into a list of IPv4 CIDR notation. |
cidr_to_ipv4 | Convert IPv4 CIDR notation into a list of IPv4 addresses. |
ipv6_to_cidr | Convert IPv6 range into a list of IPv6 CIDR notation. |
cidr_to_ipv6 | Convert IPv6 CIDR notation into a list of IPv6 addresses. |
compressed_ipv6 | Compress a IPv6 to shorten the length. |
expand_ipv6 | Expand a shorten IPv6 to full length. |
Below is the description of the functions available in the Country class.
Function Name | Description |
---|---|
Constructor | Expect a IP2Location Country Information CSV file. This database is free for download at https://www.ip2location.com/free/country-information |
get_country_info | Provide a ISO 3166 country code to get the country information in array. Will return a full list of countries information if country code not provided. Below is the information returned:
|
Below is the description of the functions available in the Region class.
Function Name | Description |
---|---|
Constructor | Expect a IP2Location ISO 3166-2 Subdivision Code CSV file. This database is free for download at https://www.ip2location.com/free/iso3166-2 |
get_region_code | Provide a ISO 3166 country code and the region name to get ISO 3166-2 subdivision code for the region. |
python sample.py
python test.py
python lookup.py <ip_address>
- Download free IP2Location LITE databases at https://lite.ip2location.com
- Download IP2Location sample databases at https://www.ip2location.com/developers
- Use the IPv4 BIN file if you just need to query IPv4 addresses.
- Use the IPv6 BIN file if you need to query BOTH IPv4 and IPv6 addresses.
Internet Connection Type | Description |
---|---|
DIAL | Dial Up |
DSL | Broadband/Cable/Fiber/Mobile |
COMP | Company/T1 |
Usage Type | Description |
---|---|
COM | Commercial |
ORG | Organization |
GOV | Government |
MIL | Military |
EDU | University/College/School |
LIB | Library |
CDN | Content Delivery Network |
ISP | Fixed Line ISP |
MOB | Mobile ISP |
DCH | Data Center/Web Hosting/Transit |
SES | Search Engine Spider |
RSV | Reserved |
Email: support@ip2location.com.
URL: https://www.ip2location.com