如何通过Selenium使用css选择器查找元素


  1. 对于此代码需要一个css选择器,x路径可用
  2. 以下是 x 路径,例如:

    //div[@class='item-display-name' and text()='edit']
    

元素的 HTML:

<div class="item-display-name">edit</div>

要找到元素,您需要诱导WebDriverWaitfor thevisibility_of_all_elements_located(),您可以使用以下基于 css 选择器的定位器策略:

element = WebDriverWait(driver, 20).until(EC.visibility_of_all_elements_located((By.CSS_SELECTOR, "div.item-display-name")))

注意:您必须添加以下导入:

from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC

更新

根据您的评论,不,您不能在 css 选择器中包含文本编辑。您可以在以下位置找到详细的讨论:

  • selenium.common.exceptions.InvalidSelectorException with "span:contains('string'(">

最新更新