xpath定位--切换frame/窗口

在web自动化中,有时候我们界面上明明定位到了该元素,但是就是点击不到,怎么回事?

--可能是没有切换到对应的frame或者没有切换到对应窗口!!!

切换frame用于在同一个窗口中切换到frame上下文,以便操作frame中的元素;

切换窗口用于在不同的窗口之间切换,以便在不同的窗口中进行操作;

目录

一、切换frame

1、什么是frame

2、怎么找到frame

3、切换frame

二、切换窗口


一、切换frame

1、什么是frame

理解浏览器中的frame可以类比为在一个网页中嵌套了其他网页。就像一个画面被分割成多个小画面,每个小画面可以加载不同的内容。每个frame都有自己的文档对象模型(DOM),可以包含独立的HTML、CSS和JavaScript代码。

frame在现代Web开发中已经不再常用,因为它们存在一些问题,如SEO(搜索引擎优化)困难、页面布局复杂等。现在更常用的做法是使用CSS和JavaScript来实现网页的布局和交互效果,而不是依赖frame来划分内容区域。

2、怎么找到frame

2.1、浏览器中打开开发者工具,定位元素,定位到元素以后,向上层级找,是否存在frame标签;

2.2、浏览器中打开开发者工具,定位元素,定位到元素以后,看底部栏是否有frame标志;

3、切换frame

在一个网页中,如果存在frame或iframe,需要切换到相应的frame才能对其进行操作。切换frame的目的是将自动化操作的焦点从当前的上下文切换到frame中,以便能够对frame中的元素进行定位和操作。

比如:

1、上图中我们想要点击 请输入查询关键字 这里,就必须先 切换frame 到 id="lookupwindow"这个框架下面;

2、接下来要点击 确定 按钮,就必须先 切换到上级frame;

二、切换窗口

在Web应用程序中,可能会打开多个浏览器窗口或标签页。切换窗口的目的是将自动化操作的焦点从当前窗口切换到另一个窗口,以便能够在不同的窗口中进行操作。

比如:

下面这个点击 2024,以奋斗起笔 打开了一个新的浏览器窗口,如果我们想要操作打开的新窗口,就必须先 切换窗口;

相关推荐
m0_471199634 分钟前
【自动化】前端开发,如何将 Jenkins 与 Gitee 结合实现自动化的持续集成(构建)和持续部署(发布)
前端·gitee·自动化·jenkins
焦耳热科技前沿12 小时前
北京科技大学/理化所ACS Nano:混合价态Cu₂Sb金属间化合物实现高效尿素电合成
大数据·人工智能·自动化·能源·材料工程
Illusionna.14 小时前
C语言自动进行独立样本 t 检验
c语言·自动化·显著性·统计检验·独立样本t检验·ttest·levene
GAOJ_K19 小时前
丝杆模组精度下降的预警信号
人工智能·科技·机器人·自动化·制造
焦耳热科技前沿19 小时前
中科大EMA:3秒焦耳热一步合成双功能催化剂用于甲醇氧化协同高效制氢
大数据·人工智能·自动化·能源·材料工程
乾元1 天前
现场运维机器人的工程化落地——移动探针采集 + AI 诊断,在真实网络中的实现路径
运维·网络·人工智能·架构·机器人·自动化
Blossom.1181 天前
大模型自动化压缩:基于权重共享的超网神经架构搜索实战
运维·人工智能·python·算法·chatgpt·架构·自动化
Pony_181 天前
面试 - web ui 自动化
前端·ui·自动化
且去填词1 天前
DeepSeek :基于 AST 与 AI 的遗留系统“手术刀”式治理方案
人工智能·自动化·llm·ast·agent·策略模式·deepseek
云动课堂1 天前
【运维实战】企业级Samba文件共享服务 · 一键自动化部署方案 (适配银河麒麟 V10 /openEuler /CentOS)
运维·centos·自动化