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_elements_by_name()
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_name() driver method – Selenium Python
driver.find_elements_by_name("name")
Example –
For instance, consider this page source:
< 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 > |
Now after you have created a driver, you can grab an element using –
login_form = driver.find_elements_by_name('1')
How to use driver.find_elements_by_name() 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 name “articleTitle”.
Create a file called run.py to demonstrate find_elements_by_name method –
# Python program to demonstrate # selenium # import webdriver from selenium import webdriver # create webdriver object driver = webdriver.Firefox() # enter keyword to search keyword = "neveropen" # get geeksforgeeks.org # get elements elements = driver.find_elements_by_name( "articleTitle" ) # print complete elements list 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 –
Terminal Output –
<!–
–>
Please Login to comment…