Fuzzu Advanced Browser in Python π₯ Make Your Own Search Engine App!
Demo :
Click Video πππ
Features :
-
Full GUI with Tkinter
-
Multi Search Engine Support
-
One-Click Navigation Buttons
-
Simple Yet Powerful Code
-
Ideal for Beginners to Intermediate
Code :
import tkinter as tk
import webview
class BrowserApp:
def __init__(self, root):
self.root = root
self.root.title("Fuzzu Advanced Browser")
self.root.geometry("1024x768")
# Search Engine Selection
self.search_engine_var = tk.StringVar()
self.search_engine_var.set("Google") # Default
search_options = ["Google", "Bing", "Yahoo", "DuckDuckGo"]
search_menu = tk.OptionMenu(root, self.search_engine_var, *search_options)
search_menu.pack(pady=5)
# URL Entry
self.url_entry = tk.Entry(self.root, font=("Arial", 14))
self.url_entry.pack(fill=tk.X, padx=10, pady=5)
self.url_entry.bind("<Return>", self.search)
# Navigation Buttons
nav_frame = tk.Frame(self.root)
nav_frame.pack(fill=tk.X, padx=10)
tk.Button(nav_frame, text="Back", command=self.go_back).pack(side=tk.LEFT)
tk.Button(nav_frame, text="Forward", command=self.go_forward).pack(side=tk.LEFT)
tk.Button(nav_frame, text="Refresh", command=self.refresh_page).pack(side=tk.LEFT)
tk.Button(nav_frame, text="Home", command=self.go_home).pack(side=tk.LEFT)
# Create browser window
self.browser = webview.create_window("Fuzzu Browser", "https://www.google.com", width=1024, height=700, resizable=True)
webview.start(gui='tkinter', debug=True)
def get_search_url(self, query):
engine = self.search_engine_var.get()
if engine == "Google":
return f"https://www.google.com/search?q={query}"
elif engine == "Bing":
return f"https://www.bing.com/search?q={query}"
elif engine == "Yahoo":
return f"https://search.yahoo.com/search?p={query}"
elif engine == "DuckDuckGo":
return f"https://duckduckgo.com/?q={query}"
else:
return f"https://www.google.com/search?q={query}"
def search(self, event=None):
query = self.url_entry.get()
if not query.startswith("http"):
url = self.get_search_url(query)
else:
url = query
self.browser.load_url(url)
def go_back(self):
self.browser.evaluate_js("history.back();")
def go_forward(self):
self.browser.evaluate_js("history.forward();")
def refresh_page(self):
self.browser.reload()
def go_home(self):
self.browser.load_url("https://www.google.com")
if __name__ == "__main__":
root = tk.Tk()
app = BrowserApp(root)
root.mainloop()
Comments
Post a Comment