Open In App

Python | Automate Google Search using Selenium

Improve
Improve
Like Article
Like
Save
Share
Report


Google search can be automated using Python script in just 2 minutes. This can be done using selenium (a browser automation tool). Selenium is a portable framework for testing web applications. It can automatically perform the same interactions that any you need to perform manually and this is a small example of it. Mastering Selenium will help you automate your day to day tasks like controlling your tweets, Whatsapp texting and even just googling without actually opening a browser in just 15-30 lines of python code. The limits of automation is endless with selenium.

Installation

  1. Selenium
    pip install selenium  
    
  2. Chrome browser
  3. Chromedriver
    Download the chrome browser from here (choose the version for your system)
    After downloading, extract it and then copy the file in the folder of the script.

This can be done in two ways, by taking input from the user and by giving input in the command line itself.

# Method 1
Asking the user for input.




from selenium import webdriver
  
# Taking input from user
search_string = input("Input the URL or string you want to search for:")
  
# This is done to structure the string 
# into search url.(This can be ignored)
search_string = search_string.replace(' ', '+'
  
# Assigning the browser variable with chromedriver of Chrome.
# Any other browser and its respective webdriver 
# like geckodriver for Mozilla Firefox can be used
browser = webdriver.Chrome('chromedriver')
  
for i in range(1):
    matched_elements = browser.get("https://www.google.com/search?q=" +
                                     search_string + "&start=" + str(i))


After saving the above script in script.py, run it in the command prompt as:

python script.py

# Method 2

Taking search string in the command line itself.




from selenium import webdriver
import sys
  
# function to convert a list into string
def convert(s): 
    str1 = "" 
    return(str1.join(s)) 
        
# Assign the arguments passed to a variable search_string
search_string = sys.argv[1:] 
  
# The argument passed to the program is accepted
# as list, it is needed to convert that into string
search_string = convert(search_string)
  
# This is done to structure the string 
# into search url.(This can be ignored)
search_string = search_string.replace(' ', '+'
  
  
# Assigning the browser variable with chromedriver of Chrome.
# Any other browser and its respective webdriver 
# like geckodriver for Mozilla Firefox can be used
browser = webdriver.Chrome('chromedriver')
  
  
for i in range(1):
    matched_elements = browser.get("https://www.google.com/search?q=" + 
                                   search_string + "&start=" + str(i))


After saving the above script in script.py, run it in the command prompt as:

python script.py "geeksforgeeks"


Last Updated : 11 May, 2020
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads