系统学习 By.XPATH 的核心语法、实操示例与最佳实践
By.XPATH 是 Selenium 元素定位的重要方式,通过元素的相关属性或特征进行精准定位。本页面提供完整的语法说明、代码示例和可交互的实操练习区域。
driver.find_element(By.XPATH, "/html/body/div[1]/header/h1")(绝对路径(从根节点开始))driver.find_element(By.XPATH, "//input[2]")(元素索引,从 1 开始)driver.find_element(By.XPATH, "//input[@id='userName']")(属性)driver.find_element(By.XPATH, "//input[starts-with(@type,'pass')]") (模糊属性值)driver.find_element(By.XPATH, "//div[contains(@class,'demo')]")(模糊属性值,包含属性匹配)driver.find_element(By.XPATH, "//button[normalize-space()='提交表单']")(文本精确匹配)driver.find_element(By.XPATH, "//div[@class='form-grid']/div[last()]")(函数条件匹配)driver.find_element(By.XPATH, "//*[@name='email' and @type='text']")(逻辑运算符,多属性组合)driver.find_element(By.XPATH, "//form[@id='xpathForm']/following-sibling::div/button")(轴定位)driver.find_elements(By.XPATH, "/html/body/div[1]/header/h1")(绝对路径(从根节点开始))driver.find_elements(By.XPATH, "//input[2]")(元素索引,从 1 开始)driver.find_elements(By.XPATH, "//input[@id='userName']")(属性)driver.find_elements(By.XPATH, "//input[starts-with(@type,'pass')]") (模糊属性值)driver.find_elements(By.XPATH, "//div[contains(@class,'demo')]")(模糊属性值,包含属性匹配)driver.find_elements(By.XPATH, "//button[normalize-space()='提交表单']")(文本精确匹配)driver.find_elements(By.XPATH, "//div[@class='form-grid']/div[last()]")(函数条件匹配)driver.find_elements(By.XPATH, "//*[@name='email' and @type='text']")(逻辑运算符,多属性组合)driver.find_elements(By.XPATH, "//form[@id='xpathForm']/following-sibling::div/button")(轴定位)