Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
How to extract the column headers in a table in Selenium with python?
We can extract the column headers in a table in Selenium. The headers of a table are represented by <th> tag in html and always in the first row of the table. The rows are identified with <tr> tag in html. A <th> tag’s parent is always a <tr> tag.
The logic is to get all the headers. We shall use the locator xpath and then use find_elements_by_xpath method. The list of headers will be returned. Next we need to compute the size of the list with the help of len method.
Syntax
driver.find_elements_by_xpath("//table/tbody/tr[1]/th")
The html code snippet of a table header is as described below −

Example
Code Implementation for getting table headers.
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 header from row1 having <th> tag
heads = driver.find_elements_by_xpath("//table/tbody/tr[1]/th")
# len method is used to get the size of that list
print(len(heads))
for h in heads:
print(h.text)
#to close the browser
driver.close()Advertisements