Mat*_*tej 5 python ubuntu selenium
我有一个问题,使用函数在Ubuntu 16.04 x64上通过Selenium的ActionChains在python 3.5中使用PageDown键向下滚动.
我想要的是我的程序向下滚动PageDown两次,所以它最后到达底部,所以我可以选择始终可见的元素.尝试使用Keys.END创建另一个函数,但它不起作用,所以我认为它与ActionChains没有关闭或某事有关.
该函数如下所示:
from selenium.webdriver.common.action_chains import ActionChains
Run Code Online (Sandbox Code Playgroud)
...
def scrollDown(self):
body = browser.find_element_by_xpath('/html/body')
body.click()
ActionChains(browser).send_keys(Keys.PAGE_DOWN).perform()
Run Code Online (Sandbox Code Playgroud)
我在另一个文件中使用它:
mod.scrollDown()
Run Code Online (Sandbox Code Playgroud)
我第一次使用它时,它会向下滚动,就像按下PageDown键一样,而另一次没有任何反应.无论我在哪里调用它,第二个(或第三个......)时间都不会执行.尝试手动完成并按下PageDown按钮两次,按预期工作.控制台不会返回任何错误,而不是IDE.
Cha*_*hai 11
也许,如果它与动作链有关,你可以这样做:
body = browser.find_element_by_css_selector('body')
body.send_keys(Keys.PAGE_DOWN)
Run Code Online (Sandbox Code Playgroud)
希望它有效!
小智 8
我必须单击主体才能使 Keys.PAGE_DOWN 工作,但不需要使用操作链:
from selenium.webdriver.common.keys import Keys
body = driver.find_element_by_css_selector('body')
body.click()
body.send_keys(Keys.PAGE_DOWN)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10135 次 |
| 最近记录: |