selenium页面交互过程,操作中常见需要点击某个元素,但是页面看不到该元素,需要滑动滚动条,滑到可见处,在进行下一步的操作,那么UI自动化中我们就是使用到execute_script方法进行实现,首先简单介绍一下滑动滚动条的常见语法
滚动条回到顶部
# js="var q=document.getElementById('id').scrollTop=0"
driver.execute_script(js)
# js="var q=document.documentElement.scrollTop=0"
driver.execute_script(js)
滚动条拉到底部
# js="var q=document.getElementById('id').scrollTop=10000"
driver.execute_script(js)
# js="var q=document.documentElement.scrollTop=10000"
driver.execute_script(js)
滚动条拉到指定位置-具体元素
target = driver.find_element_by_id("id_keypair")
driver.execute_script("arguments[0].scrollIntoView();", target)
介绍完上面的语法,我们来简单实操一下,例如打开搜g,进行搜索结果后需要滑动页面点击下一页的操作我们来简单地看看代码怎么写
# -*-coding:utf-8-*-# author:shichao
from selenium import webdriverimport time as t
dr = webdriver.Chrome()dr.maximize_window()dr.implicitly_wait(10)# 隐式等待10sdr.get('https://www.sogou.com/')t.sleep(1)
dr.find_element_by_class_name('sec-input').send_keys(u'自动化测试')t.sleep(1)dr.find_element_by_id('stb').click()t.sleep(1)# 将滚动条移动到页面的底部js = "var q=document.documentElement.scrollTop=100000"dr.execute_script(js)'''#若要对页面中的内嵌窗口中的滚动条进行操作,要先定位到该内嵌窗口,在进行滚动条操作 js="var q=document.getElementById('id').scrollTop=100000" driver.execute_script(js)'''t.sleep(3)# 点下一页dr.find_element_by_id('sogou_next').click()t.sleep(2)dr.quit()
以上就是UI自动化中与页面常操作交互,后期会持续更新,简单操作,只求每天进步一点,python都不断地更新,你能力还不更新,还在等什么.