XPATH的用法

XPATH 的两种类型

  1. 绝对路径(Absolute XPATH)

    • 从 HTML 根目录(/html/body/...)开始定位。
    • 示例:
      /html/body/div/ul/li[2]
    • 缺点:网页结构变化时容易失效。
  2. 相对路径(Relative XPATH)

    • 直接从 // 开始,不依赖 HTML 根路径,更稳定。
    • 示例:
      //li[@id='item2']
    • 优点:更灵活,不受页面层级变化的影响。

常见 XPATH 语法

XPATH 语法 作用 示例
//tagname 选择所有该标签的元素 //div 选取所有
//tag[@attribute='value'] 通过属性筛选元素 //input[@type='text']
//tag[text()='文本内容'] 按文本内容匹配 //button[text()='提交']
//tag[contains(text(), '部分文本')] 包含特定文本的元素 //p[contains(text(), '欢迎')]
//tag[contains(@attr, '部分值')] 属性值包含某个字符串 //div[contains(@class, 'header')]
//tag[1] 选取第一个匹配的元素 //li[1]
//tag[last()] 选取最后一个匹配的元素 //li[last()]

Selenium 结合 XPATH 示例

from selenium import webdriver
from selenium.webdriver.common.by import By

driver = webdriver.Chrome()
driver.get("https://example.com")

# 通过 XPATH 定位元素
element = driver.find_element(By.XPATH, "//button[text()='登录']")
element.click()

这个代码会找到**文本为“登录”**的按钮,并点击它。

你可能感兴趣的:(selenium,测试工具,xhtml,python,pycharm)