iploka
Get geolocation information from any IP addresses. Get free API Key from https://iploka.com for free-forever 10,000 monthly requests.
iploka was developed by Howuku. Howuku is an all-in-one CRO & analytics tool to help you optimize conversion rates and user experience.
Features
- Free up to 10,000 monthly request
- Support both IPv4 and IPv6
- Additional timezone, currency and connection information
Installation
- Include package in your project
$ pip install iploka-python
How to use
from iploka_geoip import GeoIP
geoip = GeoIP("YOUR_API_KEY")
# lookup ip address of the specified ip
data = geoip.lookup("134.201.250.155")
print(data)
- And the complete result will be returned:
{
"ip": "134.201.250.155",
"type": "ipv4",
"continent_code": "NA",
"continent_name": "North America",
"country_code": "US",
"country_name": "United States",
"region_code": "CA",
"region_name": "California",
"city": "Los Angeles",
"latitude": 34.003,
"longitude": -118.4298,
"location": {
"geoname_id": 4135386,
"capital": "Washington",
"languages": [
{
"code": "en-US",
"name": "English"
}
],
"country_flag": "https://flagpedia.net/data/flags/h80/us.png",
"country_flag_emoji": "🇺🇸",
"country_flag_emoji_unicode": "U+1F1FA U+1F1F8",
"calling_code": "1",
"is_eu": false
},
"time_zone": {
"id": "America/Los_Angeles",
"current_time": "2021-06-29T20:01:53-07:00",
"gmt_offset": -25200,
"code": "-07",
"is_daylight_saving": true
},
"currency": {
"code": "USD",
"name": "Us Dollar",
"plural": "Us Dollars",
"symbol": "$",
"symbol_native": "$"
},
"connection": {
"asn": 30722,
"isp": "Vodafone Italia S.p.A."
}
}
Example tests for iploka module
class GetRespTest(BaseTest):
"""Tests for our helper function: ``_get_resp``."""
def test_returns_response(self):
self.assertIsInstance(_get_resp('test', 'test'), Response)
class GeoIPLookupTest(BaseTest):
"""Tests for our ``GeoIP.lookup()`` method."""
def test_raises_connection_error_on_connection_error(self):
import iploka_geoip
iploka_geoip.geoip.API_URI = 'https://api.asdgasggasgdasgdsasgdasdfadfsda.com'
geoip = iploka_geoip.GeoIP('test')
self.assertRaises(ConnectionError, geoip.lookup, '8.8.8.8')
def test_raises_geoip_exception_on_error(self):
import iploka_geoip
iploka_geoip.geoip.API_URI = 'https://api.asdgasggasgdasgdsasgdasdfadfsds.com'
geoip = iploka_geoip.GeoIP('test')
self.assertRaises(GeoIPException, geoip.lookup, '8.8.8.8')
def test_raises_service_error_on_error(self):
import iploka_geoip
iploka_geoip.geoip.API_URI = 'https://api.ipify.org/woo'
geoip = iploka_geoip.GeoIP('test')
self.assertRaises(ServiceError, geoip.lookup, '8.8.8.8')
def test_returns_geoip_data(self):
import iploka_geoip
iploka_geoip.geoip.API_URI = 'https://api.iploka.com/api/v1'
geoip = iploka_geoip.GeoIP(environ.get('API_KEY'))
self.assertEqual(geoip.lookup('8.8.8.8')['ip'], '8.8.8.8')
Support
Email: hello@iploka.com
Metadata
Release files for iploka-python 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| iploka-python-1.0.0.tar.gz | 5.7 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| iploka_python-1.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 11.5 kB
Release files / iploka-python-1.0.0.tar.gz
| Download URL | iploka-python-1.0.0.tar.gz |
|---|---|
| Size | 5.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
13328f9affbe85841380d3f4f831788d3796498a1357e3b59923c9893ca0ebf5
|
|
BLAKE2b-256 checksum How to use checksums |
f60cdd94dd3418fd7cae0194523b371b69525de9406da3c09b8dd58536cf622f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.1 importlib_metadata/4.6.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.9.6
|
Release files / iploka_python-1.0.0-py3-none-any.whl
| Download URL | iploka_python-1.0.0-py3-none-any.whl |
|---|---|
| Size | 5.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b42d717a42bd77da25e93e1257d1afcd338099fa852ab7a68a11e63ee401737f
|
|
BLAKE2b-256 checksum How to use checksums |
4ed2279a63af52bd4ae2c2f263ca4af0614402409b4fc97bd512b77b480e228c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.1 importlib_metadata/4.6.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.9.6
|
Security for iploka-python 1.0.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.