pythonweb自动化如何定位div标签定位div表情_UI自动化定位常用实现方法代码示例...

8大基础定位

driver.find_element_by_id() # id定位

driver.find_element_by_name() # name定位

driver.find_element_by_class_name() # class名称定位

driver.find_element_by_tag_name() # 标签定位

driver.find_element_by_xpath() # xpath定位

driver.find_element_by_css_selector() # css定位

driver.find_element_by_link_text() # a标签的文本定位

driver.find_element_by_partial_link_text() # a标签的局部文本定位

xpath定位

//*[]:// 相对定位 * 匹配任意标签

第一种:id\class\name\其他属性,精确匹配

driver.find_element_by_xpath("//*[@id='']") # id与id的值

driver.find_element_by_xpath("//*[@class='']") # class和class的值
driver.find_element_by_xpath("//*[@name='']")     # naem和值
driver.find_element_by_xpath("//*[@shuxingming='']") # 属性名和值

第二种:模糊匹配\层级\索引\逻辑运算

模糊匹配:

driver.find_element_by_xpath("//*[contains(text(),'测试')]")     # 包含某些字符

driver.find_element_by_xpath("//*[starts-with(text(),'测试')]")   # 以某些字符开头

driver.find_element_by_xpath("//*[ends-with(text(),'测试')]")     # 以某些字符结尾

driver.find_element_by_xpath("//*[matchs(text(),'测试')]")      # 正则匹配

层级:

driver.find_element_by_xpath("//*[@id='']/p")

索引:

driver.find_element_by_xpath("//*[@id='']/option[0]")

第三种:绝对定位

html/body/heard/div/divdiv/ul/li[2]/a 不推荐

css定位

第一种:id\class\标签名

#:id

.:class

driver.find_element_by_css_selector("#username") #id为username

driver.find_element_by_css_selector(".username") #class为username

driver.find_element_by_css_selector("iframe") #标签名为iframe

第二种:

索引:

driver.find_element_by_css_selector("selet#nr>option:nth-child(1)") #标签名:nth-child(1)来定位子元素

层级:

driver.find_element_by_css_selector("selet#nr>option") #标签名:nth-child(1)来定位子元素

逻辑运算:

driver.find_element_by_css_selector("input#nr[id=''][class='']") #不用and连接,写在一起即可

定位多组元素

使用 find_elements ,结果为列表,使用下标索引方式取值

names=driver.find_elements_by_name("username")

print names[1]

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持WEB开发者。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值