如何在 CSS 定位器中使用正则表达式?
rest assureddynamic programmingprogramming
我们可以在 CSS 定位器中使用正则表达式。我们可以借助正则表达式部分匹配元素的属性来识别元素。在 CSS 中,有多种方法可以实现此目的。它们列于下方 −
使用通配符 *。这意味着字符串包含我们指定的文本。
语法 − driver.find_element_by_css_selector("input[name*='sel']")它将搜索包含 'name' 属性且包含 'sel' 文本的 input 标签。
使用通配符 ^。这意味着字符串以我们指定的文本开头。
语法 − driver.find_element_by_css_selector("input[name^='Tut']")
它将搜索包含以 'Tut' 文本开头的 'name' 属性的输入标签。
使用通配符 $。这意味着字符串以我们指定的文本结尾。
语法− driver.find_element_by_css_selector("input[name$='nium']")
它将搜索包含以 'nium' 结尾的 'name' 属性的输入标签。文本。
示例
在 CSS 中使用 * 通配符的代码实现。
from selenium import webdriver driver = webdriver.Chrome(executable_path="C:\chromedriver.exe") # 最大化浏览器窗口 driver.maximize_window() # 使用 get 方法启动 URL driver.get("https://www.tutorialspoint.com/index.htm") # 刷新浏览器 driver.refresh() # 借助 CSS 选择器中的 * 识别编辑框 driver.find_element_by_css_selector("input[id*='sc-i']")。 send_keys("Selenium") #关闭浏览器 driver.close()
示例
CSS 中使用 ^ 通配符的代码实现。
from selenium import webdriver driver = webdriver.Chrome(executable_path="C:\chromedriver.exe") # 最大化浏览器窗口 driver.maximize_window() # 使用 get 方法启动 URL driver.get("https://www.tutorialspoint.com/index.htm") # 刷新浏览器 driver.refresh() # 借助 CSS 选择器中的 ^ 识别编辑框 driver.find_element_by_css_selector("input[id^='gsc']")。 send_keys("Selenium") #关闭浏览器 driver.close()
示例
在 CSS 中使用 $ 通配符的代码实现。
from selenium import webdriver driver = webdriver.Chrome(executable_path="C:\chromedriver.exe") #最大化浏览器窗口 driver.maximize_window() #使用 get 方法启动 URL driver.get("https://www.tutorialspoint.com/index.htm") #刷新浏览器 driver.refresh() #借助 CSS 选择器中的 $ 识别编辑框 driver.find_element_by_css_selector("input[id$='id1']"). send_keys("Selenium") #关闭浏览器 driver.close()