【03】Selenium+Python 八种定位元素方法
操作元素,需要先查找定位到对应的元素。
查找单个元素:driver.find_element() 返回是一个web element 对象
查找多个元素:driver.find_elements() 返回是一个list对象
By 是 Selenium 中一个非常重要的类,用于定位网页元素。
使用需要导入By模块
from selenium.webdriver.common.by import By # 导入 By 模块
常用方法及示例
1. By.ID
根据元素的 ID 定位。
ID一般不会重复。

element = driver.find_element(By.ID, "kw")
2.By.NAME
根据元素的 名称 定位。

element = driver.find_element(By.NAME, "wd")
3.By.CLASS_NAME
根据元素的 类名 定位。

element = driver.find_element(By.CLASS_NAME, "s_ipt")
4.By.TAG_NAME
根据元素的 标签名 定位。
一般与driver.find_elements()方法一起使用,因为一个页面中tag name非常容易重复。

element = driver.find_elements(By.TAG_NAME,'input')
print(type(element))
find_elements 返回的是list 可以通过遍历list的方法获取每个元素

5.By.LINK_TEXT
根据元素的 链接文本 定位。

element = driver.find_element(By.LINK_TEXT, "新闻")
6.By.PARTIAL_LINK_TEXT
根据元素的 部分链接文本 定位。
同样还是上面那个新闻链接。这样也能找到。
element = driver.find_element(By.PARTIAL_LINK_TEXT, "新")
7.By.XPATH
根据元素的 XPath 定位。
在对应元素上,右键,copy,可复制xpath路径。

#复制的相对路径element = driver.find_element(By.XPATH, "//*[@id='kw']")#复制的绝对路径 很长不推荐使用element = driver.find_element(By.XPATH, "/html/body/div/div[2]/div[5]/div[1]/div/form/span[1]/input")#自己手写路径匹配规则element = driver.find_element(By.XPATH, "//input[@id='kw' and @name='wd' ]")
8.By.CSS_SELECTOR
根据元素的 CSS选择器 定位。
这个同样也可以在对应元素上,右键,copy,复制CSS选择器。

# 复制的selector
driver.find_element(By.CSS_SELECTOR,"#kw")
#自己手写
element = driver.find_element(By.CSS_SELECTOR, "input[name='wd']")
相关文章:
【03】Selenium+Python 八种定位元素方法
操作元素,需要先查找定位到对应的元素。 查找单个元素:driver.find_element() 返回是一个web element 对象 查找多个元素:driver.find_elements() 返回是一个list对象 By 是 Selenium 中一个非常重要的类,用于定位网页元素。 使…...
笔记:jQuery追加js时会自动加“_时间戳“参数,导致百度统计失败
问题描述: $(document.createElement("script")).attr(id, baidutj).attr(src, https://hm.baidu.com/hm.js?xxx).appendTo(body); 会自动给src加_时间戳的参数? 问题解疑: 【未完待续…】 问题解决: 老老实实按它…...
【PyTorch】(基础二)---- 张量
张量 在 PyTorch 中,张量(Tensor)是核心数据结构,类似于 NumPy 中的数组,但具有更强的计算能力和对 GPU 的支持。 创建 从列表或数组创建 import torch# 从列表创建 tensor_from_list torch.tensor([1, 2, 3, 4])…...
充满智慧的埃塞俄比亚狼
非洲的青山 随着地球温度上升,贝尔山顶峰的冰川消失殆尽,许多野生动物移居到海拔3000米以上的高原上生活,其中就包括埃塞俄比亚狼。埃塞俄比亚狼是埃塞俄比亚特有的动物,总数不到500只,为“濒危”物种。 埃塞俄比亚狼…...
基于STM32设计的智能桌面暖风机(华为云IOT)
一、前言 1.1 项目开发背景 随着智能家居技术的迅猛发展,传统家用电器正逐步向智能化方向转型。暖风机作为冬季广泛使用的取暖设备,其智能化升级不仅能够提高用户的使用体验,还能通过物联网技术实现远程控制和数据监控,赋予其更…...
零基础学安全--云技术基础
目录 学习连接 前言 云技术历史 云服务 公有云服务商 云分类 基础设施即服务(IaaS) 平台即服务(PaaS) 软件即服务(SaaS) 云架构 虚拟化 容器 云架构设计 组件选择 基础设施即代码 集成部署…...
Spring Boot中配置Flink的资源管理
在 Spring Boot 中配置 Flink 的资源管理,需要遵循以下步骤: 添加 Flink 依赖项 在你的 pom.xml 文件中,添加 Flink 和 Flink-connector-kafka 的依赖项。这里以 Flink 1.14 版本为例: <!-- Flink dependencies --><de…...
51单片机从入门到精通:理论与实践指南入门篇(二)
续51单片机从入门到精通:理论与实践指南(一)https://blog.csdn.net/speaking_me/article/details/144067372 第一篇总体给大家在(全局)总体上讲解了一下51单片机,那么接下来几天结束详细讲解,从…...
Notepad++ 替换所有数字给数字加单引号
前言 今天遇到这样一个场景: 要去更新某张表里 code1,2,3,4,5,6 的数据,把它的 name 设置为 ‘张三’ 但是 code在数据库里面的字段类型是 vachar(64),它自身携带索引 原本可以这样写 SQL: update tableA set namezhangsan where code in …...
【CANOE】【Capl】【RS232】控制串口设备
系列文章目录 内置函数,来控制传统的串口设备,比如继电器等 文章目录 系列文章目录前言一、控制串口二、自定义相关的参数RS232Configure**函数语法****函数功能****参数说明****返回值****示例代码** 三、回调函数的使用RS232OnSend**函数语法****函数…...
查找相关题目
1.顺序查找法适合于存储结构为(B )的线性表。 A.散列存储 B.顺序存储或链式存储 C.压缩存储 D.索引存储 顺序查找法的特点 2.适用于折半查找的表的存储方式及元素排列要求为(D ) 。 A.链接方式存储,元素无序 B.链接方式存储࿰…...
《独立开发:Spring 框架的综合应用》
一、Spring 框架概述 Spring 是一个分层的 Java SE/EE full-stack 轻量级开源框架,以 IoC 和 AOP 为内核,具有方便解耦、方便集成优秀框架、降低 Java EE API 使用难度等优点。 Spring 框架因其强大的功能以及卓越的性能而受到众多开发人员的喜爱。它是…...
数据工程流程
** 数据工程流程图** #mermaid-svg-ArT55xCISSfZImy3 {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-ArT55xCISSfZImy3 .error-icon{fill:#552222;}#mermaid-svg-ArT55xCISSfZImy3 .error-text{fill:#552222;stroke…...
Linux宝塔部署wordpress网站更换服务器IP后无法访问管理后台和打开网站页面显示错乱
一、背景: wordpress网站搬家,更换服务器IP后,如果没有域名时,使用服务器IP地址无法访问管理后台和打开网站页面显示错乱。 二、解决方法如下: 1.wordpress搬家后,在新服务器上,新建站点时&am…...
区块链知识体系
1. 区块链基础知识 Q: 什么是区块链? A: 区块链是一种去中心化的分布式账本技术,通过加密算法保证数据的不可篡改性和透明性。它由一系列按时间顺序链接的区块组成,每个区块包含一批交易记录。 Q: 区块链的主要特点是什么? 去…...
力扣第 66 题 “加一”
题目描述 给定一个由 非负整数组成的非空数组,表示一个整数。在该整数的基础上加一。 最高位数字在数组的首位,数组中每个元素只存储单个数字。 你可以假设除了整数 0 之外,这个整数不会以零开头。 示例 1: 输入: digits [1,2,3] 输出:…...
C语言数据结构与算法--简单实现队列的入队和出队
(一)队列的基本概念 和栈相反,队列(Queue)是一种先进先出(First In First Out)的线性表。只 允许在表的一端进行插入,而在另一端删除元素,如日常生活中的排队现象。队列中 允许插入的一端叫队尾…...
代码美学:MATLAB制作渐变色
输入颜色个数n,颜色类型: n 2; % 输入颜色个数 colors {[1, 0, 0], [0, 0, 1]}; createGradientHeatmap(n, colors); 调用函数: function createGradientHeatmap(n, colors)% 输入检查if length(colors) ~ nerror(输入的颜色数量与n不一…...
排序算法之冒泡排序篇
冒泡排序的思想: 是一个把元素从小到大排的一个算法思想 相邻的两个元素两两比较,大的那一个元素向后移,小的那个元素向前移 核心逻辑: 比较所有相邻的两个项,如果第一个比第二个大,就交换它们 从头开始…...
WPF ItemsControl控件
ItemsControl 是 WPF 中一个非常灵活的控件,用于显示一组数据项。它是一个基类,许多其他控件(如 ListBox, ListView, ComboBox 等)都是从 ItemsControl 继承而来。ItemsControl 的主要特点是它可以自定义数据项的显示方式…...
Qt WebEngine(02):从架构到实战,构建现代桌面Web混合应用
1. Qt WebEngine架构解析:为什么它适合桌面混合开发 第一次接触Qt WebEngine时,我正为一个工业控制面板项目头疼——需要同时展示实时设备数据和远程监控页面。传统方案要么用浏览器插件(兼容性噩梦),要么自己实现HTTP…...
009、NPU、TPU与硬件加速器在TinyML中的作用
009、NPU、TPU与硬件加速器在TinyML中的作用 去年冬天调试一个智能门锁的唤醒词模型,模型在PC上跑得飞起,量化后只有48KB,自信满满地烧进STM32F4。结果呢?唤醒延迟从预期的200ms直接飙到1.2秒,电池续航从三个月缩水到两周。拆开示波器一看,CPU在跑模型的时候几乎被占满,…...
5G NR里那个神秘的Timing Advance,到底是怎么让手机和基站‘对表’的?
5G NR中的Timing Advance:手机与基站如何实现精准"对表" 想象一下音乐会现场,指挥家轻轻抬起指挥棒,所有乐手在同一瞬间开始演奏——这种完美同步在5G网络中同样至关重要。当你的手机与基站通信时,电磁波以光速穿梭&…...
05 - rocrtst 功能测试详解
本文档深入介绍 rocrtst 功能测试套件(suites/functional/)中的各个测试模块,帮助你理解每个测试验证的 HSA API 功能。 1. 功能测试概览 功能测试注册在 rocrtstFunc 测试套件下,共 26 个源码模块,涵盖 ROCr Runtim…...
终极网络性能测试指南:iperf3 Windows版完全教程
终极网络性能测试指南:iperf3 Windows版完全教程 【免费下载链接】iperf3-win-builds iperf3 binaries for Windows. Benchmark your network limits. 项目地址: https://gitcode.com/gh_mirrors/ip/iperf3-win-builds 还在为网络速度慢而烦恼吗?…...
如何快速解锁网易云音乐NCM格式:ncmdumpGUI完整免费解决方案指南
如何快速解锁网易云音乐NCM格式:ncmdumpGUI完整免费解决方案指南 【免费下载链接】ncmdumpGUI C#版本网易云音乐ncm文件格式转换,Windows图形界面版本 项目地址: https://gitcode.com/gh_mirrors/nc/ncmdumpGUI 你是否曾经遇到过这样的困扰&…...
Amphenol ICC RJE1Y13A83152401线束组件解析与替代方案分享
在工业通信、网络设备以及自动化控制系统中,RJ45网线组件一直是不可忽视的重要连接部件。尤其是在工业以太网、交换机、工控主机以及嵌入式通信设备中,高可靠性的线束组件直接影响整机稳定性。 近期不少工程师在项目选型中关注到一款来自 Amphenol ICC 的…...
FanControl终极指南:3分钟掌握Windows风扇控制神器,告别噪音与高温困扰
FanControl终极指南:3分钟掌握Windows风扇控制神器,告别噪音与高温困扰 【免费下载链接】FanControl.Releases This is the release repository for Fan Control, a highly customizable fan controlling software for Windows. 项目地址: https://git…...
联想电脑开机蓝屏 + 自动修复卡死?官方 4 步救机指南,亲测有效
很多联想笔记本 / 台式机用户都遇到过这种崩溃场景:按下开机键后,屏幕先是亮起 Logo,紧接着弹出自动修复,转几圈就直接蓝屏报错,反复重启也进不去桌面,工作文件、学习资料全卡在里面,越急越慌。…...
HBase集群部署避坑指南:从NoNode for /hbase/master错误到稳定启动
1. 遇到NoNode错误时别慌,先看懂它在说什么 第一次看到"HBase报错ERROR: KeeperErrorCode NoNode for /hbase/master"这个错误时,我正端着咖啡准备庆祝集群启动成功。结果这行红字直接给我泼了盆冷水——相信很多新手朋友都有类似的经历。这个…...
