You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Selenium中如何查找<li class>标签及截图内的标题元素列表

Selenium定位带class属性的
  • 标签及截图中标注标题列表的方法
  • 一、通用定位带class属性的
  • 标签的方法
  • 下面是几种常用的定位方式,你可以根据实际场景选择:

    • CSS选择器(推荐):
      直接通过「标签名+class名」的组合定位,语法是li.你的class名。比如要定位class为title-item的

    • ,代码如下:

      from selenium.webdriver.common.by import By
      
      # 定位单个元素
      single_li = driver.find_element(By.CSS_SELECTOR, "li.title-item")
      # 定位所有符合条件的元素
      all_lis = driver.find_elements(By.CSS_SELECTOR, "li.title-item")
      

      优点是语法简洁,执行速度快,适合大多数场景。如果

    • 的class有多个值,比如class="title-item active",这个写法依然有效,因为CSS选择器会匹配包含该class的元素。

    • XPath定位:
      分精确匹配和包含匹配两种情况:

      • 精确匹配class值:当你需要完全匹配class的内容时,用//li[@class='你的class名']
      • 包含匹配class值:当class有多个值,只需要匹配其中一个时,用//li[contains(@class, '你的class名')]
        代码示例:
      # 精确匹配
      single_li = driver.find_element(By.XPATH, "//li[@class='title-item']")
      # 包含匹配
      all_lis = driver.find_elements(By.XPATH, "//li[contains(@class, 'title-item')]")
      

    二、针对截图中标注的标题元素列表的定位方法

    从截图来看,目标标题列表是嵌套在特定容器内的

  • 元素,每个
  • 对应一个标题项。以下是具体的操作步骤:

    1. 定位所有包含标题的

    2. 元素
      假设截图中的
    3. 带有question-summary这个class,我们可以用CSS选择器先定位所有这类
    4. ,同时加入显式等待避免页面未加载完全的问题:

      from selenium.webdriver.support.ui import WebDriverWait
      from selenium.webdriver.support import expected_conditions as EC
      
      wait = WebDriverWait(driver, 10)
      title_items = wait.until(EC.presence_of_all_elements_located((By.CSS_SELECTOR, "li.question-summary")))
      
    5. 提取每个

    6. 中的标题文本
      每个标题文本通常在
    7. 下的标签里,遍历已定位的
    8. 即可逐个提取标题:

      title_list = []
      for item in title_items:
          title_link = item.find_element(By.CSS_SELECTOR, "a.question-hyperlink")
          title_list.append(title_link.text)
      # 输出所有标题
      print(title_list)
      

    如果实际页面的class名和结构有差异,只需要替换代码中的class名称即可。

    内容的提问来源于stack exchange,提问作者Syed Mazhar Ali

  • 相关产品推荐
    方舟 Agent Plan

    超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

    最近更新时间:2026.07.26 11:05:08