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

元素在超出当前界面的下拉列表中如何定位

有时我们会遇到一种情况是,当我们找一个视频列表中的视频,在页面的最底层,此时selenium 无法定位到这个元素,因为 selenium只能定位页面上显示出来内容的元素,需要通过下拉框把界面拉到该元素所在的位置,再进行定位。

比如我们点击成员,想要在当前界面找成员名为“changcheng1211”的成员,最上面找不到,当往下拉滚动条到这个位置时,才可以定位这个元素。

下面是解决方案,先写一个循环,每次按一下向下的箭头,让界面往下移动,同时定位一下。等定位到就可以退出这个循环。

        # 1、点击页面左侧“成员”login.find_element(By.LINK_TEXT, '成员').click()# 2、点击任意成员头像进入成员主页# 3、点击“关于”进行浏览# Keys这个类中提供了键盘上不能直接输入的按键,比如回车键,F1,ESC...,TAB...# 按住ctrl键,鼠标点击类名,可以查看源码。ARROW_DOWN 是往下。time.sleep(1)ac = ActionChains(login)login.implicitly_wait(1)for i in range(1000):ac.send_keys(Keys.ARROW_DOWN).perform()login.find_element(By.CSS_SELECTOR, '[title="changcheng1211"]').click()

此时会报错:selenium.common.exceptions.NoSuchElementException: Message: Unable to locate element: [title="changcheng1211"]

此时可以把这个错误作为一个异常进行处理,

        # 1、点击页面左侧“成员”login.find_element(By.LINK_TEXT, '成员').click()# 2、点击任意成员头像进入成员主页# 3、点击“关于”进行浏览# Keys这个类中提供了键盘上不能直接输入的按键,比如回车键,F1,ESC...,TAB...# 按住ctrl键,鼠标点击类名,可以查看源码。ARROW_DOWN 是往下。time.sleep(1)ac = ActionChains(login)login.implicitly_wait(1)for i in range(1000):ac.send_keys(Keys.ARROW_DOWN).perform()try:login.find_element(By.CSS_SELECTOR, '[title="changcheng1211"]').click()breakexcept NoSuchElementException:continue

其中,要加入一个隐式等待1秒,增加稳定性。

login.implicitly_wait(1)

滚动条往下循环按一下,

ac.send_keys(Keys.ARROW_DOWN).perform()

增加捕获异常,如果找到这个元素就点击并退出

try:
        login.find_element(By.CSS_SELECTOR, '[title="changcheng1211"]').click()break

如果找不到这个元素就会捕获到NoSuchElementException异常,并继续循环。

except NoSuchElementException:continue

相关文章:

元素在超出当前界面的下拉列表中如何定位

有时我们会遇到一种情况是,当我们找一个视频列表中的视频,在页面的最底层,此时selenium 无法定位到这个元素,因为 selenium只能定位页面上显示出来内容的元素,需要通过下拉框把界面拉到该元素所在的位置,再…...

Vscode中使用make命令

前言 需要注意,如下操作需要进行网络代理,否则会出现安装失败的情况 安装 第一步 — 安装MingGW (1)进入官网下载 (2)下载完成之后,双击exe文件 (3)点击Install &#x…...

配置完eslint没有用?

当你使用 npx eslint --init 生成配置文件后 你也配置好了.prettierrc 当你在代码写一点小问题的时候 发现eslint没有进行检查 原因是你生成的 .eslintrc.js中没有加上这个配置 extends: [.....plugin:prettier/recommended],加上以后重启vscode你会发现...

[Nacos]No spring.config.import property has been defined

在学习 Spring Cloud Alibaba ,Nacos组件,创建一个cloudalibaba-config-nacos-client,加载多配置集时遇到问题 配置了 bootstrap.yml 后启动项目报错: 是因为在springcloud 2020.0.2版本中把bootstrap的相关依赖从spring-cloud-s…...

【操作与配置】Pytorch环境搭建

安装显卡驱动 显卡驱动是一种软件程序,用于控制显卡硬件与操作系统之间的通信和交互。显卡驱动负责向操作系统提供有关显卡硬件的信息,以及使操作系统能够正确地控制和管理显卡的各种功能和性能。显卡驱动还包含了针对不同应用程序和游戏的优化&#xff…...

判断QT程序是否重复运行

打开exe&#xff0c;再次打开进行提示。 main.cpp添加&#xff1a; #include "QtFilePreview.h" #include <QtWidgets/QApplication> #include <windows.h> #include <qmessagebox.h> #pragma execution_character_set("utf-8")bool Ch…...

利用Axios封装及泛型实现定制化HTTP请求处理

本案例旨在教授如何使用Axios库结合TypeScript泛型进行HTTP请求的高级封装&#xff0c;以提升代码的可复用性和类型安全性。我们将通过一个具体的示例&#xff0c;学习如何创建一个通用的请求函数&#xff0c;它能够适应不同类型的API响应&#xff0c;并在请求前后加入自定义逻…...

RN6752V1 高性能AHD转MIPIDVPBT656BT601芯片方案,目前适用于车载方案居多

RN6752V1描述&#xff1a; RN6752V1是一种模拟高清晰度&#xff08;模拟高清&#xff09;视频解码器IC&#xff0c;专为汽车应用而设计。它集成了所有必要的功能块&#xff1a; AFE&#xff0c;PLL&#xff0c;解码逻辑&#xff0c;MIPI和I2C接口等&#xff0c;在一个小的5mm …...

Rust 基金会的商标政策更新引发社区争议

Rust 基金会最近更新了其商标政策&#xff0c;引发了社区内的一些争议。 Rust 是一种高性能系统编程语言&#xff0c;拥有庞大的开发者社区。Rust 基金会成立于 2020 年&#xff0c;旨在支持和推动 Rust 语言的发展。该基金会负责管理 Rust 的商标&#xff0c;并制定了商标使用…...

Java Opencv识别图片上的虫子

最近有个需求&#xff0c;希望识别图片上的虫子&#xff0c;对于java来说&#xff0c;图像识别不是很好做。在网上也搜索了很多&#xff0c;很多的代码都是不完整&#xff0c;或者下载下载报错&#xff0c;有的写的很长看不懂。所以自己试着用java的opencv写了一段代码。发现识…...

微型操作系统内核源码详解系列五(1):arm cortex m3架构

系列一&#xff1a;微型操作系统内核源码详解系列一&#xff1a;rtos内核源码概论篇&#xff08;以freertos为例&#xff09;-CSDN博客 系列二&#xff1a;微型操作系统内核源码详解系列二&#xff1a;数据结构和对象篇&#xff08;以freertos为例&#xff09;-CSDN博客 系列…...

值传递和址传递

值传递 上面的代码是想要交换x&#xff0c;y的值&#xff0c;把x&#xff0c;y传递给swap函数之后&#xff0c;执行下面的操作&#xff1a; 在swap中a和b交换了&#xff0c;但是和x&#xff0c;y没有关系&#xff0c;所以x&#xff0c;y在main中不会变。 址传递 下面再看把x…...

【three.js】自定义物体形状BufferGeometry

目录 一、认识缓冲类型几何体BufferGeometry 二、将各个顶点连线 一、认识缓冲类型几何体BufferGeometry threejs的长方体BoxGeometry、球体SphereGeometry等几何体都是基于BoxGeometry类构建的,BufferGeometry是一个没有任何形状的空几何体,你可以通过BufferGeometry自定…...

Mac 使用 Homebrew 安装 Python3

在macOS系统中&#xff0c;使用Homebrew安装Python3并进行环境配置的步骤如下&#xff1a; 打开终端。 运行以下命令安装Python3&#xff1a; brew install python3 安装完成后&#xff0c;可以通过以下命令检查Python3的版本&#xff1a; python3 --version 为了确保终端…...

汽车行驶中是怎么保障轴瓦安全的?

汽车轴瓦是一种用于减少摩擦和支撑转动部件的关键零部件&#xff0c;通常用于发动机的曲轴、凸轮轴等转动部件上。主要作用是减少转动部件之间的摩擦&#xff0c;支撑和保护曲轴、凸轮轴等旋转部件&#xff0c;确保它们在高速旋转时的稳定性和耐用性。 在汽车轴瓦加工过程中&am…...

洗地机哪款好?洗地机十大名牌排行榜

随着科技的发展&#xff0c;各种家居清洁工具层出不穷&#xff0c;为我们的生活带来了诸多便利。在众多清洁工具中&#xff0c;洗地机的清洁效果更受大家喜爱&#xff0c;它能够完美解决了扫地机无法做到的干湿垃圾“一遍清洁”效果&#xff0c;而且几乎能解决日常生活中所有的…...

spark mllib 特征学习笔记 (二)

当然&#xff0c;请继续介绍其他特征处理方法的公式、适用场景和案例&#xff1a; 10. StringIndexer 公式&#xff1a; 将字符串类型的标签转换为数值索引&#xff1a; StringIndexer ( x ) { 0 , 1 , 2 , … , N − 1 } \text{StringIndexer}(x) \{0, 1, 2, \ldots, N-1…...

湘潭大学软件工程数据库2(题型,复习资源和计划)

文章目录 选择题关系范式事务分析E-R 图sql作业题答案链接&#xff08;仅限有官方答案的版本&#xff09;结语 现在实验全部做完了&#xff0c;实验和作业占比是百分之 40 &#xff0c;通过上图可以看出来&#xff0c;重点是 sql 语言 所以接下来主要就是学习 sql 语句怎么书写…...

第二十三节:带你梳理Vue2:Vue插槽的认识和基本使用

前言: 通过上一节的学习,我们知道了如何将数据从父组件中传递到子组件中, 除了除了将数据作为props传入到组件中,Vue还允许传入HTML, Vue 实现了一套内容分发的 API&#xff0c;这套 API 的设计灵感源自 Web Components 规范草案&#xff0c;将 <slot> 元素作为承载分发…...

父亲节马上到了-和我一起用Python写父亲节的祝福吧

前言 让我们一起用Python写一段父亲节的祝福吧 &#x1f4dd;个人主页→数据挖掘博主ZTLJQ的主页 个人推荐python学习系列&#xff1a; ☄️爬虫JS逆向系列专栏 - 爬虫逆向教学 ☄️python系列专栏 - 从零开始学python 话不多说先上代码 import tkinter as tk from doctest imp…...

Godot开发者必备:awesome-godot资源库高效使用指南

1. 项目概述&#xff1a;一个开源游戏引擎的“宝藏库” 如果你正在使用或考虑使用 Godot 引擎进行游戏开发&#xff0c;那么你很可能已经听说过 awesome-godot 这个项目。它不是一个可以直接运行的软件&#xff0c;也不是一个插件&#xff0c;而是一个由社区共同维护的、结构…...

构建个人知识管理系统:基于技能树与间隔重复的学习框架

1. 项目概述&#xff1a;构建个人专属的“人类技能树” 最近在折腾一个挺有意思的项目&#xff0c;我把它叫做“人类技能树”。这名字听起来有点科幻&#xff0c;但内核其实很朴素&#xff1a;我们每个人从小到大&#xff0c;从学校到职场&#xff0c;都在不断地学习各种技能&a…...

2026绍兴本地GEO优化公司实测:服务规范与效果验证全解析

引言随着AI搜索算法的不断迭代&#xff0c;绍兴本地企业对GEO&#xff08;生成式引擎优化&#xff09;服务的需求日益增长。为了帮助这些企业在选择GEO优化服务商时做出明智决策&#xff0c;本测评以客观、中立的态度&#xff0c;基于EEAT原则&#xff08;经验、专业性、权威性…...

一图定胜负|虎贲等考 AI 科研绘图:零代码画出期刊级学术图,让论文颜值与专业度双在线

据 Nature 统计&#xff0c;超 90% 的审稿人先看图表&#xff0c;65% 的初审意见直接来自图表质量&#xff0c;一张规范、清晰、专业的学术图&#xff0c;直接影响论文录用与答辩评分。可现实是&#xff1a;Origin、Visio 难学难精通&#xff0c;PPT 做图粗糙不规范&#xff0c…...

共筑智能传播信息安全域,新华社国家重点实验室与北京时光不语达成合作

新华社媒体融合生产技术与系统国家重点实验室与北京时光不语科技有限公司&#xff08;TIMUS.AI&#xff09;正式建立研发生态伙伴关系&#xff0c;并联合推出面向智能传播环境的“新华智信感知平台”&#xff0c;深化智能传播领域科研创新与成果转化&#xff0c;共同构建负责任…...

微信自动化终极指南:5个强大功能助你高效管理微信数据

微信自动化终极指南&#xff1a;5个强大功能助你高效管理微信数据 【免费下载链接】wechat-toolbox WeChat toolbox&#xff08;微信工具箱&#xff09; 项目地址: https://gitcode.com/gh_mirrors/we/wechat-toolbox 还在为繁琐的微信数据管理而烦恼吗&#xff1f;微信…...

AI赋能医院物流:基于PDCA循环的智能供应链韧性提升实践

1. 项目概述&#xff1a;当医院物流遇上AI与PDCA医院物流&#xff0c;听起来可能有点“幕后”&#xff0c;但它绝对是现代医疗体系顺畅运转的“大动脉”。从高值耗材、药品、检验试剂&#xff0c;到被服布草、医疗废物&#xff0c;甚至是一日三餐&#xff0c;这条链条上任何一个…...

生成式AI破解基因型-表型关联:AIPheno项目实战解析

1. 项目概述&#xff1a;当生成式AI遇见基因表型 如果你在生物信息学或者遗传育种领域工作&#xff0c;最近几年一定被“基因型-表型关联”这个老大难问题折磨过。我们手里有海量的基因组测序数据&#xff08;基因型&#xff09;&#xff0c;也积累了大量的生物体性状数据&…...

抖音下载器终极指南:从零开始掌握无水印批量下载技巧

抖音下载器终极指南&#xff1a;从零开始掌握无水印批量下载技巧 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback suppor…...

开放-构建-创新-连接:AMD AI开发者日即将登陆上海

近日&#xff0c;AMD宣布其面向AI 开发者的年度技术盛会2026年AMD AI 开发者日 (AMD AI DevDay 2026) 将于 5 月 19 日在上海前滩香格里拉酒店举行&#xff0c;AMD 董事会主席兼首席执行官 Lisa Su 博士也将出席并发表演讲。 本着“开放-构建-创新-连接”的理念&#xff0c;本…...