This package provides a client for accessing geographic information about an IP address using the hostip.info API. It validates IP addresses and URLs, and handles JSON and HTML response formats.
- Validate IPv4 addresses and service URLs.
- Retrieve geographic information such as country name, country code, city, latitude, and longitude using hostip.info API.
- Handle responses in both JSON and HTML formats.
To install the package, clone the repository and install the necessary dependencies:
pip install hostip-clientfrom hostip_client.client import ClientTo create an instance of the Client, provide a valid IP address, service URL, and an optional format (either 'json' or 'html').
ip_address = "8.8.8.8" # Replace with a valid IP address
client = Client(ip_address=ip_address)InvalidIpAddress: Raised when the provided IP address is not in a valid format.InvalidServiceUrl: Raised when the service URL is not valid.InvalidFormat: Raised if the format is not 'json' or 'html'.
Once a Client instance is created, access the geographic information like so:
print("Country Name:", client.country_name)
print("Country Code:", client.country_code)
print("City:", client.city)
print("Latitude:", client.latitude)
print("Longitude:", client.longitude)- Service URL: You can specify a different hostip.info service endpoint by passing a custom URL to
hostip_url. - Format: Choose either
jsonorhtmlformat by setting theuse_formatproperty during initialization.
This project is licensed under the Unlicence License.
Contributions are welcome! Please submit a pull request or open an issue to discuss further.
This package uses the hostip.info API for geographic data.