Python + selenium 元素定位(二) ----driver.find_elements_by_xxx()

**

driver.find_elements_by_xxx()

**
返回的是一个列表。
列表中包含所有匹配到的满足条件的元素。
如果匹配不到,则返回一个空列表。

1、ID 通过元素的id属性来定位元素

id 通过元素的id属性来定位

eles = driver.find_elements_by_id("IamID")   #  类型是 list
print (eles)
print (type(eles))
print (len(eles))

通过索引来获取到第二个元素

print (f"类型为:{type(eles[1])}")  #  什么类型???  WebElment类
eles[1].send_keys("轻舟已过万重山")

2、name 通过元素的name属性来定位

name 通过元素的name属性来定位元素

driver.find_elements_by_name("first")[1].send_keys("通过元素的name属性来定位元素")

3、class name 通过元素中的class属性来定位元素

class name 通过元素中的class属性来定位元素

driver.find_elements_by_class_name("poem")[0].send_keys("通过元素中的class属性来定位元素")

4、tag_name 根据标签的标签名来定位元素

tag_name 根据标签的标签名来定位元素

driver.find_elements_by_tag_name("input")[1].send_keys("根据标签的标签名来定位元素")

5、link_text 根据 超链接标签 中的文本内容来定位元素

*link_text 根据 超链接标签 中的文本内容来定位元素 (只适用于a标签)

print (driver.find_elements_by_link_text("朝辞白帝彩云间,")[0].text)

6、partial_link_text 根据 超链接标签 中的 部分文本内容 来定位元素

*partial_link_text 根据 超链接标签 中的 部分文本内容 来定位元素 (只适用于a标签)

print (driver.find_elements_by_partial_link_text("白")[0].text)
print (driver.find_elements_by_partial_link_text("白")[0].get_attribute("id"))

7、css selector 根据css选择器来定位元素

简单用法

css selector 根据 css选择器来定位元素

driver.find_elements_by_css_selector("#IamID")[1].send_keys("根据  css选择器来定位元素")

8、xpath 根据xpath表达式来定位元素

简单用法

xpath 根据 xpath 表达式来定位元素

driver.find_elements_by_xpath('//*[@id="IamID"]')[1].send_keys("根据 xpath 表达式来定位元素")

Python + selenium 元素定位系列

Python + selenium 元素定位(三),By方法查找元素----driver.find_element(By.XXX, “selector”)

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
在使用 PythonSelenium 库中,可以使用以下方法定位元素: 1. 使用 `find_element_by_id` 方法,通过 id 属性定位元素,例如: ```python from selenium import webdriver driver = webdriver.Chrome() driver.get("https://www.example.com") element = driver.find_element_by_id("element-id") ``` 2. 使用 `find_element_by_name` 方法,通过 name 属性定位元素,例如: ```python from selenium import webdriver driver = webdriver.Chrome() driver.get("https://www.example.com") element = driver.find_element_by_name("element-name") ``` 3. 使用 `find_element_by_class_name` 方法,通过 class 属性定位元素,例如: ```python from selenium import webdriver driver = webdriver.Chrome() driver.get("https://www.example.com") element = driver.find_element_by_class_name("element-class") ``` 4. 使用 `find_element_by_xpath` 方法,通过 XPath 表达式定位元素,例如: ```python from selenium import webdriver driver = webdriver.Chrome() driver.get("https://www.example.com") element = driver.find_element_by_xpath("//div[@class='element-class']") ``` 5. 使用 `find_element_by_css_selector` 方法,通过 CSS 选择器定位元素,例如: ```python from selenium import webdriver driver = webdriver.Chrome() driver.get("https://www.example.com") element = driver.find_element_by_css_selector(".element-class") ``` 以上是一些常用的定位方法,Selenium 还支持其他的定位方法,例如 `find_element_by_link_text`、`find_element_by_partial_link_text` 等。需要注意的是,如果要定位多个元素,需要使用 `find_elements_by_xxx` 方法。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

@chameleon

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值