semvec/pypi-packages huggingface dataset:
aiogeoip 1.0
Real asynchronous geolocation by IP address with asyncio support.
License: MIT
Requires Python: >=3.6
Keywords: aio,python,asyncio,geoip,io,geolocation

![AioGeoIP logo](https://i.pinimg.com/originals/01/a7/7b/01a77baccfefd2b5c0da749a1181bf83.png)

---
<p align="center">
        <b>Real asynchronous</b> geolocation by IP address with <b><a href="https://docs.python.org/3/library/asyncio.html">Asyncio support</a></b>.
</p>
<p align="center">
    Get the geolocation of IPs <b>asynchronously</b> or <b>synchronously</b> using the <a href="https://ip-api.com/" target="_blank"><b>IP-API</b></a> service with <b>cached</b> requests for greater optimization of your software, providing back end with <a href="https://docs.python.org/3/library/urllib.request.html" target="_blank"><b>urllib</b></a> and <a href="https://requests.readthedocs.io/en/master/" target="_blank"><b>requests</b></a>. 
</p>

<p align="center">
    <img alt="PyPI" src="https://img.shields.io/pypi/v/aiogeoip?style=flat-square">
    <img alt="PyPI - Python Version" src="https://img.shields.io/pypi/pyversions/aiogeoip?style=flat-square">
    <img alt="GitHub Workflow Status" src="https://img.shields.io/github/workflow/status/py-paulo/aiogeoip/Pylint?label=pylint&style=flat-square">
    <img alt="GitHub Workflow Status" src="https://img.shields.io/github/workflow/status/py-paulo/aiogeoip/Python%20package?label=py-package&style=flat-square">
    <img alt="Read the Docs" src="https://img.shields.io/readthedocs/aiogeoip?style=flat-square">
    <img alt="GitHub repo size" src="https://img.shields.io/github/repo-size/py-paulo/aiogeoip?style=flat-square">
    <img alt="GitHub" src="https://img.shields.io/github/license/py-paulo/aiogeoip?style=flat-square">
</p>

<p align="center">
    <a href="https://aiogeoip.readthedocs.io/en/latest/" target="_blank">Docs</a> +
    <a href="https://pypi.org/project/aiogeoip/" target="_blank">Pip</a> +
    <a href="#">Multiplataform</a> +
    <a href="https://github.com/py-paulo/aiogeoip/blob/master/CHANGES.md">CHANGELOG</a>
</p>

---


# Changelog

## 0.0.2 (02-10-2020)

### Features

* If a request is not successful (*return code 200*) it will be
tried again by ``N`` set by default to ``3`` in a time interval
in seconds ``N`` by default ``2 ``.
You can still call the ``geoip`` function only with a mandatory
IPv4 argument, so it will have the default behavior of trying 3 times.

### Bugfixes

* All backends deal with the *connection error* and return code **429** error.

### Improved Documentation

* Creation of the page to document the synchronous functions.

### Misc

* Basic tests for ``geoip`` function on all backends

## 0.0.3 (14-10-2020)

### Bugfixes

* **#2** ``ModuleNotFoundError: No module named 'ujson'``

## 0.0.4 (17-10-2020)

### Features

* [#3](https://github.com/py-paulo/aiogeoip/issues/3) function that returns the external IP address, private IP and hostname.

### Misc

* [#4](https://github.com/py-paulo/aiogeoip/issues/3) Support to python3.4+

### Improved Documentation

Function ``geoip`` in aio, requests and urllib background. Improved documentation for the Geolocation class.