How to use regular expressions in css in Selenium with python?


We can identify elements by matching its attributes partially with the help of regular expressions. In css, there are multiple methods to achieve this. They are listed below −

  • Using the wild character *. This means the string contains our given text.

Syntax

driver.find_element_by_css_selector("input[name*='sel']")

It will search the input tag which contains the 'name' attribute containing 'sel' text.

  • Using the wild character ^. This means the string starts with our given text.

Syntax

driver.find_element_by_css_selector("input[name^='Tut']")

It will search the input tag which contains the 'name' attribute starting with 'Tut' text.

  • Using the wild character $. This means the string ends with our given text.

Syntax

driver.find_element_by_css_selector("input[name$='nium']")

It will search the input tag which contains the 'name' attribute ending with 'nium' text.

Example

Code Implementation with * wild character in CSS.

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/index.htm")
#to refresh the browser
driver.refresh()
# identifying the edit box with the help of * in css selector
driver. find_element_by_css_selector("input[id*='sc-i']").
send_keys("Selenium")
#to close the browser
driver.close()

Code Implementation with ^ wild character in css.

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/index.htm")
#to refresh the browser
driver.refresh()
# identifying the edit box with the help of ^ in css selector
driver. find_element_by_css_selector("input[id^='gsc']").
send_keys("Selenium")
#to close the browser
driver.close()

Code Implementation with $ wild character in css.

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/index.htm")
#to refresh the browser
driver.refresh()
# identifying the edit box with the help of $ in css selector
driver. find_element_by_css_selector("input[id$='id1']").
send_keys("Selenium")
#to close the browser
driver.close()

Updated on: 29-Jul-2020

619 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements