900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > 关于selenium定位下拉框中动态加载的元素定位不到或无法定位的问题

关于selenium定位下拉框中动态加载的元素定位不到或无法定位的问题

时间:2019-12-02 00:57:21

相关推荐

关于selenium定位下拉框中动态加载的元素定位不到或无法定位的问题

动态加载的解决办法

小白学习中~ 记录下遇到问题解决的方法

关于文章末尾提到的问题,文章开头讲的内容就是解决办法。

总结来说就是先消除该下拉框的display=none,然后那些会消失的元素就任由你操作且不会消失了。

前段时间遇到的下拉框动态加载的问题,后来终于找到了如何定位的解决办法:

首先看该下拉框的html代码:

在我框出来的地方就是问题所在了

这里的display值是none,所以无论你点击哪里,只要点击的地方不是下拉框,无论之前下拉框的内容是否出现,只要点击了别处,甚至是快捷键检查源码都会消失 ,这就是问题所在。

通过勾选display前面的小框

当我们去勾选之后,即相当于删除display: none源码

此时我们可以看到,这次无论鼠标点击哪里,这个下拉框都不会消失了!任由我们定位!!

那么,该如何修改这里的代码呢?

看我另一个回答,地址在这里:👇

Selenium给元素的属性赋值(修改)

所以我需要将此处的style属性中的display这块代码删除就可以直接展示了。

最后定位的代码:

inputs_selcet = driver.find_elements_by_css_selector(".ant-select")inputs_selcet[1].click()meeting_div = driver.find_element_by_xpath\("//div[@class = 'ant-select-dropdown ant-select-dropdown--multiple ant-select-dropdown-placement-bottomLeft'][1]")# js代码js = "arguments[0].style = 'width: 360px;left: 360px;top: 465px;';"# 执行js修改属性值driver.execute_script(js, meeting_div)

下拉框元素动态加载的问题 👇

今天在一个系统中定位元素,上面是一个点击框,点击之后会出现可以选择的下拉框

如图:

但是在开发者选项中无法定位到这里的元素,看了下源码,源码中并没有这些选项

点击其中有的选项之后,才会出现对应的代码

请问有大佬可以告诉我下这是为什么吗?

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。