selenium学习——iframe篇

   最近本人在学习selenium,准备把自己学到的一点点皮毛和大家分享,还请各位嘴下留情。

   我们有时用selenium做网站自动化登陆的时候,你点击一些登陆时,例如网易163邮箱账号登录,此时如果你还是通过by_name、by_id来定位的话,你会发现程序会报错。究其原因是因为邮箱账号登录是嵌套到该网页中去的。

   不信的话,我给大家展示一下,打开火狐的firebug查看元素,把光标放到“邮箱账号登录”字样处,你会发现有ifame字样,这就表明这是html中嵌套的另一个html了,具体什么道理我也不清楚。 

 

   好,接下来知道这是个ifame了,那接下来该怎么来定位呢,以下是我会用得到的一些方法:

     1 、使用firebug查看元素,然后选中FirePath,然后鼠标打开第二部会发现一个下拉选框,之后找到那么“x-URS-iframe1548731108579.6604"就是你要找的iframe了,之后在

switch_to_frame()方法就可以跳到该HTML中去,之后再通过id、name、class来定位元素进行登录就可以了。

2、找到所有的含有iframe的集合,然后选择你想要的。

 同样的方法使用firebug,鼠标点击FirePath,鼠标左击Top Window 出现下拉选择框,此时你会看到三个含有iframe的标签,那么可以用frame中的index来定位,定位箭头指向的就是第三个即:switch_to.frame(3)

猜你喜欢

转载自blog.csdn.net/sl01224318/article/details/86687047