03-selenium元素定位

博客介绍了Selenium的8种基本定位方式,包括根据标签的id、name、class属性定位,标签名称定位,链接文本及部分链接文本定位,还有xpath和css selector定位,并给出了每种定位方式对应的方法。

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

目录

 

8种基本定位方式

 1. id

 2. name

 3. class name

 4. tag name

 5. link text

 6. partial link text

 7. xpath

 8. css selector


8种基本定位方式

 1. id

  • id :根据标签的id属性定位     方法:driver.find_element_by_id()
  • 说明: id一般是唯一的,首选使用id定位
# -*- coding: utf-8 -*-
# @Time    : 2021/1/9
# @Author  : 大海
from selenium import webdriver

driver = webdriver.Chrome()
baidu_url = 'https://baidu.com'

# 打开百度
driver.get(baidu_url)

# 根据id属性定位输入框
driver.find_element_by_id('kw').send_keys('selenium')

 2. name

  • name :根据标签的name属性定位     方法:driver.find_element_by_name()
# -*- coding: utf-8 -*-
# @Time    : 2021/1/9
# @Author  : 大海
from selenium import webdriver

driver = webdriver.Chrome()
baidu_url = 'https://baidu.com'

# 打开百度
driver.get(baidu_url)

# 根据name属性定位输入框
driver.find_element_by_name('wd').send_keys('selenium')

 

 3. class name

  • class name:根据标签的class属性定位     方法:driver.find_element_by_class_name()
# -*- coding: utf-8 -*-
# @Time    : 2021/1/9
# @Author  : 大海
from selenium import webdriver

driver = webdriver.Chrome()
baidu_url = 'https://baidu.com'

# 打开百度
driver.get(baidu_url)

# 根据class属性定位输入框
driver.find_element_by_class_name('s_ipt').send_keys('selenium')

 4. tag name

  • tag name :标签名称定位         方法:driver.find_element_by_tag_name()
# -*- coding: utf-8 -*-
# @Time    : 2021/1/9
# @Author  : 大海
from selenium import webdriver

driver = webdriver.Chrome()
baidu_url = 'https://baidu.com'

# 打开百度
driver.get(baidu_url)

# tag_name定位, input 不是唯一的,运行会报错
driver.find_element_by_tag_name('input').send_keys('selenium')

 5. link text

  • link text:根据链接文本定位           方法:driver.find_element_by_link_text()
# -*- coding: utf-8 -*-
# @Time    : 2021/1/9
# @Author  : 大海
from selenium import webdriver

driver = webdriver.Chrome()
baidu_url = 'https://baidu.com'

# 打开百度
driver.get(baidu_url)

# 根据链接文本定位
driver.find_element_by_link_text('新闻').click()

 6. partial link text

  • partial link text:根据链接的部分文本定位         方法:driver.find_element_by_partial_link_text()
# -*- coding: utf-8 -*-
# @Time    : 2021/1/9
# @Author  : 大海
from selenium import webdriver

driver = webdriver.Chrome()
baidu_url = 'https://baidu.com'

# 打开百度
driver.get(baidu_url)

# 根据链接部分文本定位,当文本太长时,写部分即可
driver.find_element_by_partial_link_text('新').click()

 7. xpath

  • xpath:XML路径语言,来确定XML文档中某部分位置,后面详细介绍    方法:driver.find_element_by_xpath()
# -*- coding: utf-8 -*-
# @Time    : 2021/1/9
# @Author  : 大海
from selenium import webdriver

driver = webdriver.Chrome()
baidu_url = 'https://baidu.com'

# 打开百度
driver.get(baidu_url)

# 根据xpath定位
driver.find_element_by_xpath("//*[@id='kw']").send_key('selenium')

 8. css selector

  • css selector:css选择器,前端的知识,比xpath定位速度快     方法:driver.find_element_by_css_selector('#kw')
# -*- coding: utf-8 -*-
# @Time    : 2021/1/9
# @Author  : 大海
from selenium import webdriver

driver = webdriver.Chrome()
baidu_url = 'https://baidu.com'

# 打开百度
driver.get(baidu_url)

# 根据id属性定位输入框
driver.find_element_by_css_selector('#kw').send_keys('selenium')

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

爱学习de测试小白

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

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

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

打赏作者

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

抵扣说明:

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

余额充值