How to get the values of a particular row in a table in Selenium with python?

We can get the values of a particular row in a table in Selenium. The rows of a table are represented by

tag in html code. The data in each row is enclosed with the tag in html. Thus a tag’s parent is always a tag.

The logic is get all the rows, we shall use the locator xpath and then use find_elements_by_xpath method. The list of rows will be returned. Next we need to compute the size of the list with the help of len method.

The

is not normally present in the first row of the table. In place of , there is the tag.

Syntax

driver.find_elements_by_xpath("//table/tbody/tr[2]/td")

The html code snippet of a table header is as described below −

Example

Coding Implementation to get the second row data.

from selenium import webdriver
#browser exposes an executable file
#Through Selenium test we will invoke the executable file which will then
#invoke actual browser
driver = webdriver.Chrome(executable_path="C:\chromedriver.exe")
# to maximize the browser window
driver.maximize_window()
#get method to launch the URL
driver.get("https://www.tutorialspoint.com/plsql/plsql_basic_syntax.htm")
#to refresh the browser
driver.refresh()
# identifying the from row2 having <td> tag
rwdata = driver.find_elements_by_xpath("//table/tbody/tr[2]/td")
# len method is used to get the size of that list
print(len(rwdata))
for r in rwdata:
   print(r.text)
#to close the browser
driver.close()
Updated on: 2020-07-29T10:28:59+05:30

4K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements