Python Selenium 超星点击操作处理

本文介绍了使用Python Selenium进行自动化测试时遇到的常见问题,如章节顺序混乱、点击位置被遮盖、iframe处理等,并提供了详细的解决方案。内容包括:根据title属性定位章节、使用JavaScript执行点击、切换Tab页面、处理嵌套iframe等。
摘要由CSDN通过智能技术生成

前言

最近在用Selenium测试的时候遇到的一些问题,点击不了,获取不到等等原因,明明已经写对了xpath,但是还是获取不到,也点击不了的一系列问题。本文包含了如何对iframe处理、如何对混乱顺序的元素处理、如何对点击被遮盖住的元素处理、如何切换Tap页面操作等等💨💥

1、章节循序混乱点击问题

任务 —> li[1]
章节 —> li[2]
讨论 —> li[3]
作业 —> li[4]
考试 —> li[5]

在这里插入图片描述

在这里插入图片描述

如何点击章节呢?
大家的做法肯定是直接copy xpath了🙈

在这里插入图片描述

/html/body/div[1]/div[3]/div[1]/div/ul[1]/li[2]

那么问题来了,如果这个章节要是把位置换了呢?比如说我把这个章节换到讨论下面,这个章节的li还会是li[2]吗?就是li[3]了,如果直接写死的话就用不了啦。
所以我们就需要获取到a标签的title,先拿到这个ul,然后获取里面的li总数,然后我们循环这个li总数,再通过.get_attribute(“title”)获取a标签里面的title文本内容,再判断如果title="章节"的话,就点击这个xpath就可以了。如果要点击考试就把if条件改成="考试"就好了💨

代码如下:

li_zj = self.driver.find_element_by_xpath('/html/body/div[1]/div[3]/div[1]/div/ul')
a_zj = li_zj.find_elements_by_xpath('li')
for i in range(1,len(a_zj)+1):
   chapter_li = self.driver.find_element_by_xpath('/html/body/div[1]/div[3]/div[1]/div/ul[1]/li['+str(i)+']/a').get_attribute(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

令人作呕的溏心蛋

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值