Get the Geo Location of an IP Address Python

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:
    print(usage)
    sys.exit(0)

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()

 

Subscribe

Related articles

There is brand-new Xiaomi Wireless AR Smart Glasses

Xiaomi, the Chinese multinational electronics company, has recently launched...

The OnePlus 11R has been revealed to use a Snapdragon 8+ Gen 1 processor

OnePlus is having a big event on February 7, where...

Zoom Lays Off 1,300 Employees: A Look at the Impact and Reactions

Zoom, the popular video conferencing platform, has recently announced...

The Future of Bitcoin and Cryptocurrency Outlook in 2023

Bitcoin and cryptocurrency have come a long way since...
Amarendra Singh
Amarendra Singh
Stock Trader, SEO, Music Producer

Leave a reply

Please enter your comment!
Please enter your name here