Sunday, October 5, 2025
HomeLanguagesfind_element() driver method – Selenium Python

find_element() driver method – Selenium Python

Selenium’s Python Module is built to perform automated testing with Python. Selenium Python bindings provides a simple API to write functional/acceptance tests using Selenium WebDriver. After you have installed selenium and checked out – Navigating links using get method, you might want to play more with Selenium Python. After one has opened a page using selenium such as neveropen, one might want to click some buttons automatically or fill a form automatically or any such automated task. 

This article revolves around how to grab or locate elements in a webpage using locating strategies of Selenium Web Driver. More specifically, find_element() is discussed in this article. With this strategy, the first element with the id attribute value matching the location will be returned. If no element has a matching id attribute, a NoSuchElementException will be raised.

Syntax: 

driver.find_element(By.ID, "id_of_element")

Example:

For instance, consider this page source:  

html




<html>
 <body>
  <form id="loginForm">
   <input name="username" type="text" />
   <input name="password" type="password" />
   <input name="continue" type="submit" value="Login" />
  </form>
 </body>
<html>


Now after you have created a driver, you can grab an element using the below command as follows: 

login_form = driver.find_element(By.ID ,"loginForm")

How to use driver.find_element() method in Selenium?

Let’s try to practically implement this method and get a element instance for “https://www.geeksforgeeks.org/”. Let’s try to grab search form input using its id “gsc-i-id2”. 

Create a file called run.py to demonstrate find_element method: 

Python3




# Python program to demonstrate
# selenium
 
# import webdriver
from selenium import webdriver
from selenium.webdriver.common.by import By
 
# create webdriver object
driver = webdriver.Firefox()
 
# enter keyword to search
keyword = "neveropen"
 
# get geeksforgeeks.org
driver.get("https://www.geeksforgeeks.org/")
 
# get element
element = driver.find_element(By.ID ,"gsc-i-id2")
 
# print complete element
print(element)


Now run using – 
 

Python run.py

First, it will open firefox window with neveropen, and then select the element and print it on terminal as show below. 

Browser Output: 

find_element-driver-method-Selenium-Python

Terminal Output – 
 

terminal-output-find_element-method-Python-selenium

 

More locators for locating single elements

.math-table { border-collapse: collapse; width: 100%; } .math-table td { border: 1px solid #5fb962; text-align: left !important; padding: 8px; } .math-table th { border: 1px solid #5fb962; padding: 8px; } .math-table tr>th{ background-color: #c6ebd9; vertical-align: middle; } .math-table tr:nth-child(odd) { background-color: #ffffff; }

Locators Description
find_element(By.ID ,”value”) The first element with the id attribute value matching the location will be returned.
find_element(By.NAME ,”value”) The first element with the name attribute value matching the location will be returned.
find_element_by_xpath The first element with the xpath syntax matching the location will be returned.
find_element_by_link_text The first element with the link text value matching the location will be returned.
find_element_by_partial_link_text The first element with the partial link text value matching the location will be returned.
find_element_by_tag_name The first element with the given tag name will be returned.
find_element_by_class_name the first element with the matching class attribute name will be returned.
find_element_by_css_selector The first element with the matching CSS selector will be returned.
RELATED ARTICLES

Most Popular

Dominic
32337 POSTS0 COMMENTS
Milvus
86 POSTS0 COMMENTS
Nango Kala
6706 POSTS0 COMMENTS
Nicole Veronica
11871 POSTS0 COMMENTS
Nokonwaba Nkukhwana
11934 POSTS0 COMMENTS
Shaida Kate Naidoo
6821 POSTS0 COMMENTS
Ted Musemwa
7088 POSTS0 COMMENTS
Thapelo Manthata
6779 POSTS0 COMMENTS
Umr Jansen
6778 POSTS0 COMMENTS