Python IP Tracker App with GUI | Track IP Location Real-Time! (Working Project)

Python IP Tracker App 🔥  

Location, ISP, Country, City — sab real-time milta hai!


Ab tum bhi bana sakte ho yeh amazing GUI app – full source code available hai 👇  

Check the video & start building your own!

  

Demo :


Click Video 👇👇👇


















Code :


import tkinter as tk

from tkinter import messagebox, scrolledtext

import requests


def track_ip(ip):

    try:

        url = f"http://ip-api.com/json/{ip}"

        response = requests.get(url)

        data = response.json()


        if data['status'] == 'success':

            result = (

                f"IP: {data['query']}\n"

                f"Country: {data['country']} ({data['countryCode']})\n"

                f"Region: {data['regionName']} ({data['region']})\n"

                f"City: {data['city']}\n"

                f"ZIP: {data['zip']}\n"

                f"Lat, Lon: {data['lat']}, {data['lon']}\n"

                f"Timezone: {data['timezone']}\n"

                f"ISP: {data['isp']}\n"

                f"Org: {data['org']}\n"

            )

        else:

            result = "Invalid IP address or request failed."


        result_area.delete('1.0', tk.END)

        result_area.insert(tk.END, result)

    except Exception as e:

        result_area.delete('1.0', tk.END)

        result_area.insert(tk.END, "Error fetching data.")


def track_input_ip():

    ip = ip_entry.get().strip()

    if ip == "":

        messagebox.showwarning("Empty Field", "Please enter an IP address.")

    else:

        track_ip(ip)


def track_my_ip():

    try:

        response = requests.get("https://api.ipify.org")

        my_ip = response.text.strip()

        ip_entry.delete(0, tk.END)

        ip_entry.insert(0, my_ip)

        track_ip(my_ip)

    except:

        result_area.delete('1.0', tk.END)

        result_area.insert(tk.END, "Failed to fetch public IP.")


# GUI setup

root = tk.Tk()

root.title("IP Tracker by FuzzuTech")

root.geometry("450x400")

root.resizable(False, False)


tk.Label(root, text="Enter IP Address:", font=("Arial", 12)).pack(pady=10)

ip_entry = tk.Entry(root, font=("Arial", 12), width=40)

ip_entry.pack(pady=5)


btn_frame = tk.Frame(root)

btn_frame.pack(pady=10)


tk.Button(btn_frame, text="Track IP", command=track_input_ip, width=15, bg="skyblue").pack(side=tk.LEFT, padx=5)

tk.Button(btn_frame, text="Track My Public IP", command=track_my_ip, width=20, bg="lightgreen").pack(side=tk.LEFT, padx=5)


result_area = scrolledtext.ScrolledText(root, width=55, height=15, font=("Consolas", 10))

result_area.pack(pady=10)


root.mainloop()


Comments

Popular posts from this blog

🚀 Simple Login & Registration System in Python Tkinter 📱

🚀 Create a Python Screen Recorder with Audio (Complete Code)