• python-web自动化-Js-滚动条操作


    滚动条操作:当待操作的元素在页面可是区域外时,要将待操作的元素滚动到可视区域当中


    步骤:
    1.先找要将要操作的元素
    element = driver.find_element_by_xxxx("XXXX")


    2.再将元素滑动到可视区域;通过执行javaScript语句实现
    driver.execute_script("arguments[0].scrollIntoView();",element)
    #另外一种方式,scrollIntoViewIfneeded


    3.再操作元素
    element.XXX()

    以下是移动的四种方式

    1.移动到元素element对象的“底端”与当前窗口的“底部”对齐

    driver.execute_script("arguments[0].scrollIntoView(false);",element)

    2.移动到元素element对象的“顶端”与当前窗口的“顶部”对齐

    driver.execute_script("arguments[0].scrollIntoView();",element)

    3.移动到页面底部

    driver.execute_script("window.scrollTo(0,document.body.scrollHeight)")

    4.移动到页面顶部

    driver.execute_script("window.scrollTo(0,document.body.scrollHeight,0)")




    代码:百度首页输入内容,跳转页面;滑动到该页面底部,点击【下一页】

    from selenium.webdriver.common.keys import Keys
    from selenium import webdriver
    from selenium.webdriver.support.wait import WebDriverWait
    from selenium.webdriver.support import expected_conditions as EC
    from selenium.webdriver.common.by import By
    import time
    # 百度首页输入内容检索,跳转检索后页面,划动到该页面最下面的‘下一页’
    driver = webdriver.Chrome()
    driver.get('https://www.baidu.com/')
    WebDriverWait(driver,10).until(EC.visibility_of_element_located((By.XPATH,'//input[@id="kw"]')))
    driver.find_element_by_xpath('//input[@id="kw"]').send_keys('许嵩',Keys.ENTER) #输入文本并回车操作
    time.sleep(2)
    # 定位元素‘下一页’
    ele = driver.find_element_by_xpath('//a[@class="n"]')
    #根据‘下一页元素’,划动到页面最下面
    driver.execute_script("arguments[0].scrollIntoView();",ele)
    time.sleep(2)
    # 点击【下一页】
    ele.click()
  • 相关阅读:
    Android 监听电量的状态
    2017.1-TOP5 Android开源库
    Android实践 -- Android蓝牙设置连接
    Android ListView滚动到指定的位置
    软件原型设计工具
    plupload+struts2实现文件上传下载
    ORACLE 更改username
    单词反转实现
    FatMouse' Trade(杭电1009)
    JS-JavaScript学习笔记(一)
  • 原文地址:https://www.cnblogs.com/Aphrodite/p/10530211.html
Copyright © 2020-2023  润新知