当前位置: 首页 > news >正文

Selenium使用注意事项:

find_element 和 find_elements 的区别

WebDriver和WebElement的区别

问题:

会遇到报错:

selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"css selector","selector":"[id="1"]"}

NoSuchElementException 的意思就是在当前的网页上找不到该元素, 就是找不到id为1的元素。

分析原因:

可以用sleep等待时间来解决

from selenium import webdriver
from selenium.webdriver.common.by import Bywd = webdriver.Chrome()wd.get('https://www.byhy.net/_files/stock1.html')element.send_keys('通讯\n')element = wd.find_element(By.ID, 'go')
element.click()import timewhile True:try:element=wd.find_element(By.ID,'1')print(element.txt)breakexcept:time.sleep(1)wd.quit()

但是这样的解决方案存在问题:

Selenium的Webdriver对象有个方法叫 implicitly_wait ,可以称之为隐式等待 ,或者全局等待 。该方法接受一个参数, 用来指定最大等待时长。

wd.implicitly_wait(10)

最后

from selenium import webdriver
from selenium.webdriver.common.by import Bywd = webdriver.Chrome()
wd.implicitly_wait(10)wd.get('https://www.byhy.net/_files/stock1.html')element = wd.find_element(By.ID, 'kw')element.send_keys('通讯\n')# 返回页面 ID为1 的元素
element = wd.find_element(By.ID,'1')print(element.text)

iframe元素非常的特殊, 在html语法中,frame 元素 或者iframe元素的内部 会包含一个被嵌入的另一份html文档。导致如果直接读取.plant就没有办法读取到,就必须切换操作范围 到被嵌入的文档中,需要加入

相关文章:

Selenium使用注意事项:

find_element 和 find_elements 的区别 WebDriver和WebElement的区别 问题: 会遇到报错: selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"css selector",&…...

小程序需要进行软件测试吗?小程序测试有哪些测试内容?

在如今移动互联网快速发展的时代,小程序已成为人们生活中不可或缺的一部分。然而,面对日益增长的小程序数量和用户需求,小程序的稳定性和质量问题日益突显。因此,对小程序进行软件测试显得尤为重要。 近期的一项调查显示&#xf…...

一文读懂企业租用GPU的注意事项!

在人工智能、大数据处理及高性能计算领域,GPU算力已成为推动技术创新与业务增长的核心动力。尚云Sunclouds作为GPU算力租赁服务提供商,为用户提供了灵活、高效且成本可控的解决方案。对于初次接触GPU算力租赁的用户而言,了解并掌握租用过程中…...

Linux运维:mysql主从复制原理及实验

当一台数据库服务器出现负载的情况下,需要扩展服务器服务器性能扩展方式有向上扩展,垂直扩展。向外扩展,横向扩展。通俗的讲垂直扩展是将一台服务器扩展为性能更强的服务器。横向扩展是增加几台服务器。 主从复制好比存了1000块钱在主上&…...

022-GeoGebra中级篇-几何对象之直线与坐标轴

本文主要介绍一下GeoGebra中直线的常见输入方式,比如工具栏输入、表达式输入、函数输入,最后再把坐标轴的调用简单介绍一下。内容比起传统的教学更偏向于实战一些,若感兴趣欢迎继续阅读。 目录 一、直线1. 关于工具栏绘制(1&#…...

node js安装、配置(Windows版)

目录 node js 安装 node js 全局配置 1、全局安装路径 2、全局缓存路径 3、修改环境变量 pnpm安装、卸载 全局安装pnpm 验证pnpm版本 卸载pnpm 1、移除全局安装的包 2、移除pnpm cli 脚本直接安装 npm安装的使用命令直接卸载 node js 安装 cmd 查看是否存在&…...

go语言day08 泛型 自定义错误处理 go关键字:协程

泛型: 抛错误异常 实现error接口类型 用java语言解释的话,实现类需要重写error类型的抽象方法Error().这样就可以自定义异常处理。 回到go语言,在Error()方法中用*argError 这样一个指针类来充当error接口的实现类。 在f2()方法中定义返回值…...

MySql性能调优01-[数据结构和索引]

数据结构和索引 什么是索引索引的种类常见索引数据结构和区别二叉树 红黑树 什么是索引 索引的种类 在Mysql中索引是在存储引擎层实现的,而不是在服务层实现的 按数据结构分:Btree索引、Hash索引、Full-text索引按存储结构分:聚簇索引、非聚…...

【算法入门-栈】逆波兰表达式求值

📖逆波兰表达式求值 ✅描述✅扩展:什么是逆波兰表达式✅题解方法一:栈✅题解方法二(数组模拟栈) 今天又刷了一道题,奥利给 刷题地址: 点击跳转 ✅描述 给定一个逆波兰表达式,求表达…...

【史上最全面ESP32教程】http通信

文章目录 前言HTTP协议是什么?HTTP协议的特点HTTP协议的常见应用 esp32 使用http通信通信流程基础使用HTTPClient 常用的函数函数介绍:void end(void);bool connected(void);void setReuse(bool reuse);void setUserAgent(const String& userAgent);…...

*算法训练(leetcode)第二十七天 | 56. 合并区间、738. 单调递增的数字、968. 监控二叉树

刷题记录 56. 合并区间*738. 单调递增的数字*968. 监控二叉树 56. 合并区间 leetcode题目地址 排序后遇到有重合的区间选择最大的区间保存即可,结果集中保存的是离当前区间最近的区间,因此使用当前区间与结果集中的最后一个集合比较查看是否有重合&…...

OpenJudge 奇数求和

目录 描述思路样例输入样例输出CodeCC 总时间限制: 1000ms 内存限制: 65536kB 描述 计算非负整数 m 到 n(包括m 和 n )之间的所有奇数的和,其中,m 不大于 n,且n 不大于300。例如 m3, n12, 其和则为:357911…...

【排序 - 快速排序】

快速排序(Quick Sort)是一种高效的排序算法,它基于分治(Divide and Conquer)的策略。这种排序算法的核心思想是选择一个基准元素,将数组分割成两部分,使得左边的元素都小于等于基准元素&#xf…...

pytest使用报错(以及解决pytest所谓的“抑制print输出”)

1. 测试类的类名问题 #codingutf-8import pytestclass TestClass1:def setup(self) -> None:print(setup)def test_01(self) -> None:print(test_01111111111111111111111)def test_02(self) -> None:print(test_02)以上述代码为例,如果类名是Test开头&am…...

开源项目编译harbor arm架构的包 —— 筑梦之路

GitHub - amy5200/harbor-arm64 先做个记录,空了再验证...

[笔记] SKF Enveloping FAQ 用户指南

文档编号:Application Note CM3013 1.名词解释: 1.1cavitationWhat Is Cavitation? | Pumps & Systems 叶片在液体中扰动形成的超声波 1.2 stiff machinehttps://suspensionlist.com/the-pros-and-cons-of-stiff-vs-soft-suspension-systems/ …...

宪法学学习笔记(个人向) Part.3

宪法学学习笔记(个人向) Part 3 3. 国家基本制度 3.1 国家性质 3.1.1 国家性质概述 国家性质的概念 国家性质也称国体,或国家的阶级本质,是指各个阶级在国家中的地位(哪个阶层是统治阶层,哪个阶层是被统治阶层,哪个…...

联想拯救者Y7000 IRX9 笔记本接口功能介绍

适用机型:Legion Y7000 IRX9; 83JJ; USB(3.2 Gen 1)Type-接口摄像头开关组合音频插孔 多用于USB Type-C接口 以太网接口 多用途USB Type-C接口(支持USB Power Delivery)HDMI接口USB(3.2 Gen 1&…...

【ESP32】打造全网最强esp-idf基础教程——16.SmartConfig一键配网

SmartConfig一键配网 一、SmartConfig知识扫盲 在讲STA课程的时候,我们用的是代码里面固定的SSID和密码去连接热点,但实际应用中不可能这么弄,我们得有办法把家里的WiFi SSID和密码输入到设备里面去,对于带屏带输入设备还…...

MD5加密和注册页面的编写

MD5加密 1.导入包 npm install --save ts-md5 2.使用方式 import { Md5 } from ts-md5; //md5加密后的密码 const md5PwdMd5.hashStr("123456").toUpperCase(); 遇见的问题及用到的技术 注册页面 register.vue代码 <template><div class"wappe…...

【网络】每天掌握一个Linux命令 - iftop

在Linux系统中&#xff0c;iftop是网络管理的得力助手&#xff0c;能实时监控网络流量、连接情况等&#xff0c;帮助排查网络异常。接下来从多方面详细介绍它。 目录 【网络】每天掌握一个Linux命令 - iftop工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景…...

深入浅出:JavaScript 中的 `window.crypto.getRandomValues()` 方法

深入浅出&#xff1a;JavaScript 中的 window.crypto.getRandomValues() 方法 在现代 Web 开发中&#xff0c;随机数的生成看似简单&#xff0c;却隐藏着许多玄机。无论是生成密码、加密密钥&#xff0c;还是创建安全令牌&#xff0c;随机数的质量直接关系到系统的安全性。Jav…...

Go 语言接口详解

Go 语言接口详解 核心概念 接口定义 在 Go 语言中&#xff0c;接口是一种抽象类型&#xff0c;它定义了一组方法的集合&#xff1a; // 定义接口 type Shape interface {Area() float64Perimeter() float64 } 接口实现 Go 接口的实现是隐式的&#xff1a; // 矩形结构体…...

连锁超市冷库节能解决方案:如何实现超市降本增效

在连锁超市冷库运营中&#xff0c;高能耗、设备损耗快、人工管理低效等问题长期困扰企业。御控冷库节能解决方案通过智能控制化霜、按需化霜、实时监控、故障诊断、自动预警、远程控制开关六大核心技术&#xff0c;实现年省电费15%-60%&#xff0c;且不改动原有装备、安装快捷、…...

高等数学(下)题型笔记(八)空间解析几何与向量代数

目录 0 前言 1 向量的点乘 1.1 基本公式 1.2 例题 2 向量的叉乘 2.1 基础知识 2.2 例题 3 空间平面方程 3.1 基础知识 3.2 例题 4 空间直线方程 4.1 基础知识 4.2 例题 5 旋转曲面及其方程 5.1 基础知识 5.2 例题 6 空间曲面的法线与切平面 6.1 基础知识 6.2…...

大模型多显卡多服务器并行计算方法与实践指南

一、分布式训练概述 大规模语言模型的训练通常需要分布式计算技术,以解决单机资源不足的问题。分布式训练主要分为两种模式: 数据并行:将数据分片到不同设备,每个设备拥有完整的模型副本 模型并行:将模型分割到不同设备,每个设备处理部分模型计算 现代大模型训练通常结合…...

Spring AI 入门:Java 开发者的生成式 AI 实践之路

一、Spring AI 简介 在人工智能技术快速迭代的今天&#xff0c;Spring AI 作为 Spring 生态系统的新生力量&#xff0c;正在成为 Java 开发者拥抱生成式 AI 的最佳选择。该框架通过模块化设计实现了与主流 AI 服务&#xff08;如 OpenAI、Anthropic&#xff09;的无缝对接&…...

微信小程序云开发平台MySQL的连接方式

注&#xff1a;微信小程序云开发平台指的是腾讯云开发 先给结论&#xff1a;微信小程序云开发平台的MySQL&#xff0c;无法通过获取数据库连接信息的方式进行连接&#xff0c;连接只能通过云开发的SDK连接&#xff0c;具体要参考官方文档&#xff1a; 为什么&#xff1f; 因为…...

数据库分批入库

今天在工作中&#xff0c;遇到一个问题&#xff0c;就是分批查询的时候&#xff0c;由于批次过大导致出现了一些问题&#xff0c;一下是问题描述和解决方案&#xff1a; 示例&#xff1a; // 假设已有数据列表 dataList 和 PreparedStatement pstmt int batchSize 1000; // …...

【JavaSE】绘图与事件入门学习笔记

-Java绘图坐标体系 坐标体系-介绍 坐标原点位于左上角&#xff0c;以像素为单位。 在Java坐标系中,第一个是x坐标,表示当前位置为水平方向&#xff0c;距离坐标原点x个像素;第二个是y坐标&#xff0c;表示当前位置为垂直方向&#xff0c;距离坐标原点y个像素。 坐标体系-像素 …...