Selenium 如何解决滚动条问题,未显示元素不可操作问题

Posted 简简单单OnlineZuozuo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Selenium 如何解决滚动条问题,未显示元素不可操作问题相关的知识,希望对你有一定的参考价值。

Selenium 如何解决滚动条问题,未显示元素不可操作问题


1、当通过 Selenium 操作页面上不可见的元素时,会出现 Message: element not interactable 问题

原因是因为操作了一个不可见的元素,需要滚动滚动条后再操作

2、如何滚动网页滚动条

纵向滚动条

 js = 'var action=document.documentElement.scrollTop=200'
 driver.execute_script(js)

如果某些浏览器不生效,可以尝试

 js = 'var q=document.body.scrollTop=200'
 driver.execute_script(js)

横向滚动条

 js = 'window.scrollTo(100,400)'
 driver.execute_script(js)

3、如何滚动内部 div 的滚动条

 js = 'document.getElementById('div 的id').scrollTop = 200'
 driver.execute_script(js)

4、如何滚动到指定元素的位置

当我们无法确定我们需要操作的元素在什么位置的时候,我们通过直接跳到指定元素的位置来进行操作

 element = driver.find_element_by_id(id)
 js = 'arguments[0].scrollIntoView();'
 driver.execute_script(js , element)

以上是关于Selenium 如何解决滚动条问题,未显示元素不可操作问题的主要内容,如果未能解决你的问题,请参考以下文章

Selenium WebDriver如何使滚动条滚动到最元素位置

Selenium WebDriver如何使滚动条滚动到最元素位置

Python selenium 滚动条

Python selenium 滚动条

Selenium 浏览器滚动条操作

selenium 如何控制滚动条逐步滚动