首页 > 其他分享 >selenium4-定位单个页面元素

selenium4-定位单个页面元素

时间:2022-10-18 08:00:07浏览次数:48  
标签:定位 Service service webdriver 元素 driver selenium4 单个 页面

在操作各项页面元素之前,先介绍下如何通过Python代码来找到这些元素。WebDriver提供了18种元素定位方法,共分为两类(定位当个元素、定位组元素),本节先举例详细介绍下selenium4-定位单个页面元素的方法,注意和selenium3元素定位方法之间的区别。

from selenium import webdriver
from selenium.webdriver.chrome.service import Service  # 管理驱动程序的启动和停止
from selenium.webdriver.common.by import By


# 通过ID定位页面元素
service = Service(r"C:\Users\USER\AppData\Local\Programs\Python\Python37\chromedriver.exe")
driver = webdriver.Chrome(service=service)
driver.get("http://www.baidu.com")
driver.find_element(By.ID, 'kw').send_keys('selenium')  # 定位到百度搜索框,输入关键词
sleep(2)
driver.quit()

# 通过name定位页面元素
service = Service(r"C:\Users\USER\AppData\Local\Programs\Python\Python37\chromedriver.exe")
driver = webdriver.Chrome(service=service)
driver.get("http://www.baidu.com")
driver.find_element(By.NAME, 'wd').send_keys('selenium')
sleep(2)
driver.quit()

# 通过clas name定位页面元素
service = Service(r"C:\Users\USER\AppData\Local\Programs\Python\Python37\chromedriver.exe")
driver = webdriver.Chrome(service=service)
driver.get("http://www.baidu.com")
driver.find_element(By.CLASS_NAME, 's_ipt').send_keys('selenium')
sleep(2)
driver.quit()

# 通过tag name定位页面元素
service = Service(r"C:\Users\USER\AppData\Local\Programs\Python\Python37\chromedriver.exe")
driver = webdriver.Chrome(service=service)
driver.get("http://www.baidu.com")
driver.find_element(By.TAG_NAME, 'input').send_keys('selenium')
sleep(2)
driver.quit()
注意:一般情况下tag name不唯一,这种方法不建议使用,在下个小节中我们将采用组元素定位,使用tag name来实现定位百度搜索框。 # 通过链接中的全部文字定位元素 service = Service(r"C:\Users\USER\AppData\Local\Programs\Python\Python37\chromedriver.exe") driver = webdriver.Chrome(service=service) driver.get("http://www.baidu.com") driver.find_element(By.LINK_TEXT, '新闻').click() sleep(2) driver.quit() # 通过链接中的部分文字定位元素 service = Service(r"C:\Users\USER\AppData\Local\Programs\Python\Python37\chromedriver.exe") driver = webdriver.Chrome(service=service) driver.get("http://www.baidu.com") driver.find_element(By.PARTIAL_LINK_TEXT, '闻').click() sleep(2) driver.quit() # 通过XPath定位元素 service = Service(r"C:\Users\USER\AppData\Local\Programs\Python\Python37\chromedriver.exe") driver = webdriver.Chrome(service=service) driver.get("http://www.baidu.com") driver.find_element(By.XPATH, '//*[@id="s-top-left"]/a[1]').click() sleep(2) driver.quit() # 通过CSS定位元素 service = Service(r"C:\Users\USER\AppData\Local\Programs\Python\Python37\chromedriver.exe") driver = webdriver.Chrome(service=service) driver.get("http://www.baidu.com") driver.find_element(By.XPATH, '//*[@id="kw"]').send_keys('selenium') sleep(2) driver.find_element(By.XPATH, '//*[@id="su"]').click() sleep(2) driver.quit()

 后面小节我们继续讲解selenium4-定位组元素的方法。

标签:定位,Service,service,webdriver,元素,driver,selenium4,单个,页面
From: https://www.cnblogs.com/zxt518/p/16797102.html

相关文章

  • Selenium4Web自动化4-鼠标键盘模拟操作
    一、Web元素交互参考官方文档:https://www.selenium.dev/zh-cn/documentation/webdriver/elements/interactions/用于操纵表单的高级指令集.仅有五种基本命令可用于元......
  • Selenium4Web自动化3-等待机制详解
    一、sleepsleep(timeout)是设定一个固定的等待时长,代码运行到此处,会强行进行等待指定的时间,使用方便的同时,效率最低,不建议使用。缺点:不能准确把握需要等待的时间(有时操......
  • Selenium4Web自动化2-页面元素定位
    一前端页面的组成分析详解1常见标签标签语言,常见的标签有:a:超链接img:图片input:输入框、文件上传button:按钮select:下拉框iframe:窗体p:文字。。。。。2标签语......
  • 通过Js来设置页面样式
    介绍我们可以在编辑HTML源码的时候将CSS样式写死到.css文件或者HTML元素的style属性中,但又时候可能会需要动态地来修改某个元素的样式。我这里介绍两种方式:修改HTML元素的s......
  • WordPress在插件管理页面添加超链接
    •介绍如果你创建了一个插件,WordPress的插件管理页面中就可以看到,而且会有启用、停用、编辑等默认的超级链接按钮。那么,怎么才能添加一个自定义的呢?•玉照[captionid="a......
  • 解决vuex刷新页面数据丢失问题(数据持久化)
    1、为什么刷新页面vuex的数据会丢失刷新页面vuex的数据会丢失属于正常现象,因为JS的数据都是保存在浏览器的堆栈内存里面的,刷新浏览器页面,以前堆栈申请的内存被释放,这就是......
  • ResizeObserver监听页面元素变化
    前提:对整个浏览器窗口大小变化监听,我们可以采用【resize】事件进行监听。如果浏览器大小没有变化,但里面某个元素的宽高变化了,我们该怎么监听呢?比如使用【echarts】渲染图表......
  • Selenium4Web自动化1-自动化入门与环境搭建
    一、自动化测试基础1分层自动化测试  分层的自动化测试:从黑盒(UI)单层到黑盒和白盒多层的自动化测试,即从全面黑盒自动化测试到对系统的不同层次进行的自动化测试。1......
  • 安卓手机微信中清除页面缓存的方法
    安卓手机微信中清除页面缓存的方法只在安卓中有效,ios微信刷新页面即可清除缓存。1.微信中打开网页 ​​http://debugx5.qq.com​​。2.滑动到底部,如图所示勾选4个缓存选项,......
  • mac系统下用nginx服务器部署页面
    1.安装nginx(需要先安装Homebrew)。使用命令brewinstallnginx安装nginx。 2.用命令open/usr/local/Cellar/nginx用访达打开安装路径。 3.打开bin文件夹,双击nginx文件,启动......