selenium元素定位

 


selenium元素定位

selenium元素定位主要有以下8种

  • ID
  • Class name
  • name
  • tag name
  • css selector
  • xpath
  • link
  • partial link text

这几个方式在python selenium中对应的方法

  • find_element_by_id()
  • find_element_by_name()
  • find_element_by_class_name()
  • find_element_by_tag_name()
  • find_element_by_link()
  • find_element_by_partial_link_text()
  • find_element_by_css_selector()
  • find_element_by_xpath()

代码示例:

复制代码
#coding utf-8
from selenium import webdriver
browser = webdriver.Firefox()

browser.get("http://www.baidu.com")

##百度输入框的定位方式###

#通过ID方式定位
browser.find_element_by_id('kw').send_keys('selenium')

#通过class name方式定位
browser.find_element_by_class_name('s_ipt').send_keys('selenium')

#通过name方式定位
browser.find_element_by_name('wd').send_keys('selenium')

#通过tag name方式定位
browser.find_element_by_tag_name('input').send_keys('selenium')

#通过css方式定位
browser.find_element_by_css_selector('#kw').send_keys('selenium')

#通过xpath方式定位
browers.find_element_by_xpath("//input[@id = 'kw']").send_keys("selenium")

############
browser.find_element_by_id('su').click()
time.sleep(3)
browser.quit() #表示关闭浏览器
browser.close()#表示关闭当前页面

xpath:attributer(属性)
driver.find_element_by_xpath("//input[@id = 'kw']").send_keys("selenium")

#input标签下 id = kw的元素

xpath:idRelative(id 相关性)

driver.find_element_by_xpath("//div[@id = 'fm']"/from/span/input).send_keys("selenium")
复制代码

 

Link 与partial link text方式定位

 

复制代码
#link定位,主要用于定位文本

#coding utf-8
from selenium import webdriver

browser = webdriver.Firefox()
browser.get("http://www.baidu.com")
browser.find_element_by_link_text("贴吧").click()
browser.quit()

#使用partial link text 方式定位
browser.find_element_by_partial_link_text("").click()
复制代码

 

xpath语法等参考【这里】学习。

 

posted @   局长  阅读(239)  评论(0编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示