Python+selenium 怎么定位自定义弹窗元素

2025-01-17 13:52:10
推荐回答(1个)
回答1:

首先要确定弹窗的类型。

弹出窗口基本上有如下三种实现方式:

(1)div弹窗

(2)新标签页弹窗

(3)alert弹窗

针对不同类型的弹窗,相应采取不同的定位措施。

由于不知问题中实际的弹窗类型,在此笼统说下:

1、div弹窗

对于此类弹窗,可以直接用 find_element_by_... 得到 div 窗口中各元素,再进行操作即可,需要注意的一点是,需要等 div 窗口元素加载完毕之后,再去获取窗口中的元素。

2、新标签页弹窗

新标签页弹窗,则需要进行窗口的切换。从图片看,问题中的弹窗应该不属于此类弹窗。

3、alert弹窗

此类弹窗是由 js 执行 alert、confirm、prompt等生成的弹窗,其应对方法是:

使用 switch_to.alert() 方法定位到 alert/confirm/prompt,然后使用text/accept/dismiss/send_keys 方法进行操作。