python实现界⾯拖动_pythonselenium滚动条处理、页⾯拖动selenium中没有直接控制滚动条的⽅法,可以使⽤⽅法:execute_script(),可以直接执⾏js的脚本。
⼀、竖向滚动条控制,三种⽅法总有⼀款适合你。
1.滚动条拉到最底:
js="var q=document.documentElement.scrollTop=10000"
2.滚动条拉到最底:
js="var ElementById('id').scrollTop=10000"
这⾥的id为滚动条的id,滚动条没有id的⽹页此⽅法不适⽤。
3.滚动条拉到最底:
js = "var q=document.body.scrollTop=10000"
可以修改scrollTop 的值来定位右侧滚动条的位置,0是最最顶部,10000是最底部。
在百度中搜索selenium,拖动滚动条⾄最底端:
from selenium importwebdriverfrom selenium.webdriver.support.ui importWebDriverWaitfrom selenium.webdriver.support importexpected_conditions as ECfrom selenium.webdrivermon.by importByfrom time importsleep
driver=webdriver.Chrome()
<("www.baidu")
driver.maximize_window()#搜索 selenium
driver.find_element_by_id("kw").send_keys("selenium")
driver.find_element_by_id("su").click()#等待元素可见
WebDriverWait(driver,10).until(EC.visibility_of_element_located((By.XPATH,'//*[@id="5"]/h3/a')))#将
滚动条下拉⾄最低
js="var q=document.documentElement.scrollTop=ute_script(js)
⼆、横向滚动条控制
1.通过坐标控制横向和纵向滚动条 scrollTo(x, y)
js = "window.scrollTo(100,400);"
三、将⽬标元素拖动到页⾯可见区域
1.可见元素与页⾯“底端”对齐,scrollIntoView(false)
2.可见元素与页⾯“顶端”对齐,scrollIntoView()
在百度中搜索selenium,拖动元素⾄页⾯底端,便于点击操作(因为在百度中将元素拖动⾄页⾯顶端时,会被百度⽹页⾃带的表头遮挡住,点击时会报错)
from selenium importwebdriverfrom selenium.webdriver.support.ui importWebDriverWaitfrom selenium.webdriver.support importexpected_conditions as ECfrom selenium.webdrivermon.by importByfrom time importsleep
driver=webdriver.Chrome()
<("www.baidu")
driver.maximize_window()#搜索 selenium
driver.find_element_by_id("kw").send_keys("selenium")
js控制滚动条driver.find_element_by_id("su").click()#等待元素可见
WebDriverWait(driver,10).until(EC.visibility_of_element_located((By.XPATH,'//*[@id="5"]/h3/a')))#1.先到元素element = driver.find_element_by_xpath('//*[@id="5"]/h3/a')#2.利⽤js将元素拖动到可见区域
执⾏结果如下:
:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论