Featured Posts

  • Relation Between Games and Studies
  • Best Screen Protector for Nintendo Switch Available So Far
  • Gamer Problems: Then vs. Now [Comic]
  • Facebook Messenger May Soon Get Reactions, Dislike Button
  • What Happens When You Stop Smoking?

Get the Geo Location of an IP Address with Python

This program will geolocate an IP address based on input from the user. For this script, we will be using a bunch of Python modules to accomplish this. First we make a check to see that the user puts in enough arguments, and if not, they 'usage' variable will be printed on how to use it. We are using the geody web service to find geolocate the IP.

import re
import sys
import urllib2
import BeautifulSoup

usage = "Run the script: ./geolocate.py IPAddress"

if len(sys.argv)!=2:

if len(sys.argv) > 1:
    ipaddr = sys.argv[1]

geody = "http://www.geody.com/geoip.php?ip=" + ipaddr
html_page = urllib2.urlopen(geody).read()
soup = BeautifulSoup.BeautifulSoup(html_page)

# Filter paragraph containing geolocation info.
paragraph = soup('p')[3]

# Remove html tags using regex.
geo_txt = re.sub(r'<.*?>', '', str(paragraph))
print geo_txt[32:].strip()


Copyright © New Techie