Python selenium元素的定位

这篇具有很好参考价值的文章主要介绍了Python selenium元素的定位。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

视频版教程:一天掌握python爬虫【基础篇】 涵盖 requests、beautifulsoup、selenium

对象的定位应该是自动化测试的核心,要想操作一个对象,首先应该识别这个对象。一个对象就是一个人一样,他 会有各种的特征(属性),如比我们可以通过一个人的身份证号,姓名,或者他住在哪个街道、楼层、门牌找到这 个人。

那么一个对象也有类似的属性,我们可以通过这个属性找到这对象。

注意:不管用那种方式,必须保证页面上该属性的唯一性

webdriver 提供了一系列的对象定位方法,常用的有以下几种

id 通过标签id定位

name 通过标签name定位

class name 通过标签class定位

link text 通过超链接文本定位

partial link text 通过超链接文本(模糊匹配)定位

tag name 通过标签名定位

xpath 通过xpath方式定位

css selector 通过css选择器方式定位

webdriver提供了两个方法查询元素

find_element (查询第一个匹配元素) 和find_elements(查询所有匹配元素)

参考代码:文章来源地址https://www.toymoban.com/news/detail-716308.html

import time

from selenium import webdriver
from selenium.webdriver.common.by import By

# 创建浏览器操作对象
browser = webdriver.Chrome()
url = "https://www.baidu.com/"

browser.get(url)

# 元素定位

# 根据id查找对象
button = browser.find_element(By.ID, 'su')

print(button)

# 根据标签名查找
e1 = browser.find_element(By.TAG_NAME, 'input')
print("e1", e1)

# 根据标签的name属性值查找
e2 = browser.find_elements(By.NAME, "wd")
print("e2", e2)

# 根据xpath查找
e3 = browser.find_elements(By.XPATH, '//input[@id="su"]')
print("e3", e3)

# 使用css选择器方式查找
e4 = browser.find_element(By.CSS_SELECTOR, ".s_ipt")
e5 = browser.find_element(By.CSS_SELECTOR, "#su")
print("e4", e4)
print("e5", e5)

# 使用链接文本查找
e6 = browser.find_element(By.LINK_TEXT, "新闻")
e7 = browser.find_elements(By.PARTIAL_LINK_TEXT, "新")
print("e6", e6)
print("e7", e7)

# 使用样式名称查找
e8 = browser.find_element(By.CLASS_NAME, "s_ipt")
print("e8", e8)

到了这里,关于Python selenium元素的定位的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Python Selenium 八大元素定位方法(下)

    今天我们来学习UI自动化中,剩余五个元素定位方法:tag_name、link_text、partial_link_text、Xpath、css_selector 以tag_name元素定位为例 HTML是由不同的标签组成的,每个标签都是指的同一类,所以用tag定位效率低下,一般不建议使用。 以link_text元素定位为例 1、使用F12,定位到含有链接

    2024年02月12日
    浏览(43)
  • Python学习笔记——selenium定位iframe和元素(快速定位)

    在使用selenium过程,发现定位iframe、元素比较困难,所以制作一个辅助小工具。  当前界面没有,调整driver位置 1.Xpath定位  2,.其他定位方式 获取元素、操作失败重复操作,直至操作成功。

    2024年02月13日
    浏览(48)
  • 【Python中Selenium元素定位的各种方法】

    1、元素定位操作: 2、创建浏览器驱动操作,导入By模块: 3、ID元素定位 4、name元素定位 5、class_name:class属性元素定位 6、tag_name:标签名元素定位 7、link_text:超链接标签元素定位 8、partial_link_text:超链接标签(模糊)元素定位 9、xpath:路径(绝对路径、相对路径)元素定位

    2024年02月19日
    浏览(37)
  • 自学Python 69 Selenium八大元素定位方法(新版BY方法)_selenium定位元素的方法和优缺点

    文章目录 Python Selenium八大元素定位方法(新版BY方法) 前言 一、常用的八种定位方法(新旧对比) 二、查看网页元素 三、八大元素定位示例 1、id定位 2、name定位 3、class定位 4、tag定位 5、link定位 6、partial_link定位 7、xpath定位 8、CSS定位 在学习使用Selenium对网页元素进行定位时

    2024年04月22日
    浏览(58)
  • 【Python】Python 模块用法:selenium 4 版本页面元素定位方法汇总

    目录 一、定位页面元素方法源码说明  (1)Webdriver.common (2)selenium.webdriver.common.by (3)By 二、定位页面元素方法用法汇总 (1)2.0 及以下低版本 selenium :By 定位页面元素方法用法(可忽略) (2)3.0 ~ 3.9 版本 selenium:By 定位页面元素方法用法 (3)4.0 ~ 4.9 版本 selenium:

    2023年04月13日
    浏览(87)
  • 【web自动化】selenium+python八大元素定位

    推荐:b站软件测试老白 注意点 1.有id才能能使用id定位 2.id不能重复 通过百度页面,演示如何查找id确定id是否重复,其他方式定位也可以这样搜索 代码如下(示例): 如果有多个class_name,可以使用 find_elements 和取下标的方式 例如:打开哔哩哔哩页面,有番剧,电影等等,他

    2024年01月21日
    浏览(82)
  • python安装selenium(Firefox和Chrome)+元素定位

    一、下载地址 谷歌浏览器chromedriver驱动下载地址: https://chromedriver.storage.googleapis.com/index.html 火狐浏览器geckodriver驱动下载地址: https://registry.npmmirror.com/binary.html?path=geckodriver/ 二、谷歌浏览器配置: 将下载好的chromedriver驱动解压后放在python文件夹中 三、火狐浏览器: 将下载

    2024年02月06日
    浏览(48)
  • Python+selenium自动化元素定位防踩坑

    在自动化UI测试过程中常常会在元素定位阶段就踩坑,碰到困扰已久的问题。 以下是个人整理元素定位报错原因和解决方法。 踩坑一:StaleElementReferenceException selenium.common.exceptions.StaleElementReferenceException: Message: stale element reference: element is not attached to the page document 异常原因:

    2024年02月06日
    浏览(47)
  • 【Python+Selenium学习系列5】Selenium特殊元素定位之-鼠标悬停操作

    Selenium模拟用户在浏览器中的操作,比如点击按钮。在某些场景下,我们需要 模拟鼠标悬停的操作,来触发一些隐藏的元素。 本文将介绍Python Selenium实现鼠标悬停操作。 鼠标悬停,即 当光标与其名称表示的元素重叠时触发的事件,在Selenium中将键盘鼠标操作封装在Action Cha

    2024年04月10日
    浏览(72)
  • Python+Selenium实现列表元素的查找定位及删除操作

    获取列表(单页)全部数据 删除某行元素 查找并删除元素(目前仅支持删除单条数据,循环删除待继续研究) 结果示例

    2024年02月13日
    浏览(63)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包