Launch Website URL shortcut using Python

14 Sep, 2021
In this article, we are going to launch favorite websites using shortcuts, for this, we will use Python’s sqlite3 and webbrowser modules to launch your favorite websites using shortcuts.
Both sqlite3 and webbrowser are a part of the python standard library, so we don’t need to install anything separately. 
The best part about this is that because we are using a database to store the websites and their shortcuts, your favorite websites will remain saved in the database even if we close the terminal or shut down the PC. So you don’t need to add your favorite websites to the database every time you execute the script.
We create a new database if it does not already exist and connect it to our database.
We create different functions to fetch data from the database, open a website, add a new website to the database, and remove a website from the database
We call a while loop so that our program can listen to the user’s commands until they quit
We ask for a response from the user to perform a specific task
Python3
import webbrowser  import sqlite3          # connecting to sqlite and creating# an actual databaseconn = sqlite3.connect("favorites.db")  c = conn.cursor()  c.execute("""CREATE TABLE IF NOT EXISTS favorites        (title TEXT, url TEXT)""")  # Created a table named favorites# (if it didn't already existed).# Then inserted the headers  title # (which takes text as input)# and  url  (which takes text as input)def get_data():    """    Used to extract data from our database    """          c.execute('''SELECT * FROM favorites''')    results = c.fetchall()    return results    def get_fav(titl):    """    Used to extract the favorite website    """          c.execute('''SELECT * FROM favorites WHERE title=?''',              (titl, ))    return c.fetchone()  def add_fav(titl, url):    """    Used to add a new favorite website    """          c.execute("""INSERT INTO favorites (title, url) VALUES (?, ?)""",              (titl, url))    conn.commit()  def remove_fav(titl):    """    Used to remove a favorite website from the database    """          c.execute('''DELETE FROM favorites WHERE title=?''',              (titl, ))    conn.commit()  # A loop to listen to commands from the userwhile True:    print()      # printing each statement like     # this to keep the code clean    print("Press v to visit a favorite,", end=" ")    print("ls for list,", end=" ")    print("add to add a new item,", end=" ")    print("rm to delete,", end=" ")    print("q to quit:", end=" ")      # taking input command from the user    response = input("")      if response.lower() == "v":        shortcut = input("Enter the shortcut for the website: ")        record = get_fav(shortcut)          try:            # opening the selected website in the browser            webbrowser.open(record[1])          except TypeError:            # if we don't have the shortcut             # in the database, print this:            print('This shortcut does not exist in the database')      elif response.lower() == "ls":        # printing the items in the database        print(get_data())      elif response.lower() == "add":        # adding a new website to the database        destination = input(            "Enter URL for the shortcut (Example -> https://xyz.com): ")          # adding the shortcut to the above website in        # the database        shortcut = input("Enter the shortcut for the URL: ")          add_fav(shortcut, destination)      elif response.lower() == "rm":                # removing an item from the database        shortcut = input(            "Enter the shortcut for the URL you want to remove: ")        remove_fav(shortcut)        print("Removed Successfully")      elif response.lower() == "q":        break      else:        print("Enter a valid command")
Output:
Code Execution
Blogathon-2021
Python-SQLite
python-utility
Blogathon
Python
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
How to Import JSON Data into SQL Server?
SQL Query to Convert Datetime to Date
Python program to convert XML to Dictionary
Scrape LinkedIn Using Selenium And Beautiful Soup in Python
Modes of DMA Transfer
Read JSON file using Python
Python map() function
Adding new column to existing DataFrame in Pandas
Python Dictionary
How to get column names in Pandas dataframe