Archive
IP to Country
Problem
Having an IP address, how to figure out where (in which country) it is located?
Solution
There are several sites that provide all kinds of information about a host (e.g. Geotool, GeoBytes, etc). We could write a scraper but there are some problems with this approach: some sites limit the number of free accesses (e.g. Geotool presents a captcha after a while); if the layout changes, you need to rewrite the scraper.
It would be better to use a web service. That’s how I found geoPlugin, which provides some free web services, including JSON too.
Examples:
- look up your own host
- look up a host of Google
I made a simple Python script for it, available here.
Offline solution
“If high accuracy is not a concern, MaxMind’s free databases (Country / City) could offer an off-line solution. It has a Python API.” — Avaris
Credits
Thanks to Ashwini Chaudhary who pointed me towards geoPlugin.