如何在 Python 中使用 Selenium 中 CSS 中的正则表达式?


借助正则表达式,我们可以通过部分匹配其属性来识别元素。在 css 中,有多种方法可实现此目的。它们列在下面 −

  • 使用通配符 *。这意味着字符串包含我们给定的文本。

语法

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

它将搜索包含包含 'sel' 文本的 'name' 属性的输入标签。

  • 使用通配符 ^。这意味着字符串以我们给定的文本开头。

语法

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
#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://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()

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://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()

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://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()

更新于: 29-Jul-2020

890 次浏览

启动您的 职业

完成课程即可获得相关认证

立即开始
广告