selenium元素定位的几种方式

本文详细介绍了Selenium用于Web自动化测试中定位网页元素的多种方法,包括XPath、CSS选择器、ID、类名等,结合Python编程实例,帮助读者掌握高效定位网页元素的技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

from selenium import webdriver

# 打开一个指定的浏览器
driver = webdriver.Chrome()

# 访问一个网址
driver.get('https://www.baidu.com')

# id定位
ele = driver.find_element_by_id("kw")
# class定位    参数只能是一个class值
driver.find_element_by_class_name("s_ipt")
# 找页面当中匹配表达式的所有元素
eles = driver.find_elements_by_class_name("s_ipt")
# tag
driver.find_element_by_tag_name("input")
# name
driver.find_element_by_name("wd")
# 文本链接
# 1.完全匹配
driver.find_element_by_link_text("更多产品")
# 2.模糊匹配
driver.find_element_by_partial_link_text("产品")

# xpath
# 绝对定位  以/单斜杠开头,从根节点开始,严格按照顺序和位置来表达   父/子
# /html/body/div/div/div[@class="main-container"]/div/ul/ul/li/span   不建议使用
# 相对定位  以//双斜杠开头,不管元素的位置和顺序. 在HTML页面当中,有没有匹配到表达式的元素
# driver.find_element_by_xpath("//*[@id=\"kw\"]")
# 1.//标签名[@属性名称=属性值]
# 2.逻辑运算   //标签名[@属性名称=属性值 and\or @属性名称=属性值]
# 3.层级定位   元素本身的属性不能够唯一定位到自己. 借助于比较近的祖先结点来缩小重找范围,
# 先找到某一个祖先结点,再在祖先的子孙后代中查找元素
# //div[@id="u"]/a[@name="tj_login"]
# //tr[2]/td[@data-time="15:00-16:00"]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值