python+selenium元素定位

一、selenium八大元素定位

1.1、通过id

from selenium import webdriver

driver = webdriver.Chrome()
driver.get("https://www.baidu.com/")
# 通过元素的id进行定位
driver.find_element_by_id("kw")

1.2、通过name

 driver.find_element_by_name("wd")

1.3、通过class的名字class_name

driver.find_element_by_class_name("s_ipt")

1.4、通过标签属性tag

driver.find_element_by_tag_name("input")

1.5、通过link

有个元素 <a class="mnav" target="_blank" href="http://www.hao123.com">hao123</a>

driver.find_element_by_link_text("hao123")

1.6、通过partial_link

有时候一个超链接它的字符串可能比较长,如果输入全称的话,会显示很长,这时候可以用一模糊匹配方式,截取其中一部分字符串就可以了

driver.find_element_by_partial_link_text("ao123")

1.7、通过xpath

xpath是一种路径语言

find_element_by_xpath(“//input[@id='kw']”)

1.8、通过css

css是另外一种语法,比xpath更为简洁

find_element_by_css_selector()

二、定位一组元素

以下八种方法返回的为列表
1.通过id定位:find_elements_by_id()

2.通过name定位:find_elements_by_name()

3.通过class定位:find_elements_by_class_name()

4.通过tag定位:find_elements_by_tag_name()

5.通过link定位:find_elements_by_link_text()

6.通过partial_link定位:find_elements_by_partial_link_text()

7.通过xpath定位:find_elements_by_xpath()

8.通过css定位:find_elements_by_css_selector()

三、元素定位参数化

find_element(by, value)和find_elements(by, value)
在这里插入图片描述
查看源码其实定位find_element_by_xxx的方法都是返回的find_element方法
find_element和find_elements方法第一个参数为定位的方式,第二个参数为元素定位的表达式

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值