Related Articles

Related Articles

find_elements_by_css_selector() driver method – Selenium Python
  • Last Updated : 14 Apr, 2020

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 geeksforgeeks, 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_elements_by_css_selector() is discussed in this article. This method returns a list with type of elements specified.
To grab a single first element, checkout – find_element_by_css_selector() driver method – Selenium Python

Syntax –

driver.find_elements_by_css_selector("css selector")

Example –
For instance, consider this page source:

filter_none

edit
close

play_arrow

link
brightness_4
code

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

chevron_right


Now after you have created a driver, you can grab an element using –



login_form = driver.find_elements_by_css_selector('#loginForm')

How to use driver.find_elements_by_css_selector() 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 class name “gsc-input”.
Create a file called run.py to demonstrate find_elements_by_css_selector method –

filter_none

edit
close

play_arrow

link
brightness_4
code

# Python program to demonstrate
# selenium
  
# import webdriver
from selenium import webdriver
  
# create webdriver object
driver = webdriver.Firefox()
  
# enter keyword to search
keyword = "geeksforgeeks"
  
# get geeksforgeeks.org
  
# get elements
elements = driver.find_elements_by_css_selector(".gsc-input")
  
# print complete elements list
print(element)

chevron_right


Now run using –

Python run.py

First, it will open firefox window with geeksforgeeks, and then select the element and print it on terminal as show below.
Browser Output –
find_element-driver-method-Selenium-Python
Terminal Output –
elements-list-driver-methods-Selenium-Python

Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.

To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course.




My Personal Notes arrow_drop_up
Recommended Articles
Page :