selenium控制滑动条


写在前面

最近在用python写抢票脚本,需要用到selenium控制滑动条,于是总结一下。

# 移动到元素element对象的“顶端”与当前窗口的“顶部”对齐  
driver.execute_script("arguments[0].scrollIntoView();", element);  
driver.execute_script("arguments[0].scrollIntoView(true);", element);  
  
# 移动到元素element对象的“底端”与当前窗口的“底部”对齐  
driver.execute_script("arguments[0].scrollIntoView(false);", element);  
  
# 移动到页面最底部  
driver.execute_script("window.scrollTo(0, document.body.scrollHeight)");  
  
# 移动到指定的坐标(相对当前的坐标移动)
driver.execute_script("window.scrollBy(0, 700)");   

# 结合上面的scrollBy语句,相当于移动到700+800=1600像素位置  
driver.execute_script("window.scrollBy(0, 800)");  
  
# 移动到窗口绝对位置坐标,如下移动到纵坐标1600像素位置  
driver.execute_script("window.scrollTo(0, 1600)");  

# 结合上面的scrollTo语句,仍然移动到纵坐标1200像素位置  
driver.execute_script("window.scrollTo(0, 1200)");

项目代码

health_info = WebDriverWait(self.driver, 1, 0.1).until(
                EC.presence_of_element_located((By.CLASS_NAME, 'health-info-content'))
            )
            print("---检测到温馨提示遮罩---")
            health_info_box = health_info.find_element(by=By.ID, value='health-info-html-box')
            # 模拟向上滑动,阅读温馨提示内容
            print("---正在模拟向上滑动阅读温馨提示内容---")
            self.driver.execute_script("arguments[0].scrollIntoView(false);", health_info_box);

大麦网抢票源代码:https://github.com/ZBIGBEAR/DamaiWang

参考

[1]Selenium下拉滚动条

br>


文章作者: Alex
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Alex !
  目录