ActionChains定位悬浮菜单元素

页面中元素的定位中难的是一些影藏的元素,你直接用方式去找,会定位不到,比如悬浮菜单,他不在页面的可视范围内,需要鼠标放上才能显示元素内容,selenium中有一个方法可以应对,那就是-ActionChains。

1、我们用浏览器的打开**首页,按下F12查看元素,可以看到在这个选择地区的功能中有两个div,其中一个默认显示,另外一个默认是看不到值的,你要在页面上把鼠标放上去才会出现:

鼠标移动到元素上面都不要点击就直接出现了:

2、actionchain实现,还是在我们之前的jupyternotebook中首先布置好前提条件:同时按下shift+enter把浏览器和地址打开:

3、然后找到页面元素,使用actionchains移动鼠标到元素上并保持(actionchains有好多种方法可用的),运行这行代码后,你去看一下打开的浏览器其实是把下拉菜单拉出来了的。

4、再去定位另一个div下面的ul列表,并将获取到的内容输出:

这样就定位到了元素,这是去的所有,根据需要需你选着li列表中的第几个就可以了。

过程注意事项,通过这种一步一步的方式去实现的话,在第三步,也就是actionchain点出了悬浮菜单,并停留在上面的时候,如果我们去点击或是把活动窗口切换的webdriver窗口的话,在去执行后面就获取不到了:

这可能就是相当于中途被打断了吧。(只能运行一次,怪了)



转载请注明:http://www.abuoumao.com/hytd/4366.html

网站简介| 发布优势| 服务条款| 隐私保护| 广告合作| 网站地图| 版权申明

当前时间: 冀ICP备19029570号-7