今天在自己编写QQ邮箱自动登录的脚本时遇到一个问题,看图说话:
因此,正常来说都会想到要定位到“账号密码登录”,于是就定位到源代码:

定位如下:
driver.find_element_by_id('switcher_plogin').click()
返回提示找不到该元素,于是我就又开始了各种方法,什么css,xpath,class_name各种方法全部来一遍,都是找不到该元素。后来突然想到Frame嵌套,就回去看了一下教材,顺百百度了一下,原来在定位的时候左上角有提示,这个元素是一个嵌套元素!!!

#转换到嵌套页面中去定位该元素
driver.switch_to.frame("login_frame")
driver.find_element_by_id('switcher_plogin').click()
加入这个转换语句后,脚本刷刷刷就执行成功了。
与君共勉!

本文讲述了在使用selenium编写QQ邮箱自动登录脚本时遇到的frame嵌套元素定位难题。作者通过尝试多种定位方法无果后,发现元素位于嵌套frame中,最终通过切换frame成功定位并解决问题。

3797

被折叠的 条评论
为什么被折叠?



