zoukankan      html  css  js  c++  java
  • selenium滚动条

    运行python时出现报错

    Element is not clickable at point (x, x). Other element would receive the click

    报错原因:要点击的元素已经加载,但是界面没有显示出来,需要拉滚动条才能显示出来

    程序如下:

    from selenium import webdriver
    from time import sleep
    driver = webdriver.Chrome()
    driver.get("https://www.baidu.com/")
    #拖动到滚动条底部---向下
    js = "var q=document.documentElement.scrollTop=10000"
    driver.execute_script(js)
    sleep(3)
    #滚动左右滚动条---向右
    js2 = "var q=document.documentElement.scrollLeft=10000"
    driver.execute_script(js2)
    sleep(3)
    #滚动左右滚动条---向左
    js3 = "var q=document.documentElement.scrollLeft=0"
    driver.execute_script(js3)
    
    # #控制滚动条逐步滚动
    # for y in range(15):
    #     js = "window.scrollBy(0,100)"
    #     driver.execute_script(js)
    #     sleep(1)

     以上的这个方法有的时候无效,我觉得可能是因为界面滚动元素太多了

    换一种方式

    我们可以先让页面直接跳到元素出现的位置,然后就可以操作了。同样需要借助JS去实现。 
    元素聚焦:

    target = driver.find_element_by_xxxx()  #界面上想要看到的元素
    driver.execute_script("arguments[0].scrollIntoView();", target)

    scrollIntoView是一个与页面(容器)滚动相关的API

    element.scrollIntoView() 参数默认为true

    参数为true:调用该函数,页面发送滚动,使element的顶部与视图(容器)顶部对齐

    参数为false:使element的底部与视图(容器)底部对齐

  • 相关阅读:
    Judy alpha 第九天
    Judy alpha 第八天
    Judy alpha 第七天
    Judy alpha 第六天
    Judy alpha 第五天
    Judy alpha 第四天
    Fieldtrip 和 spm 文件读取
    matlab更改打开时候默认路径
    mne-python 安装大法
    Greenhouse-Geisser;统计结果报告;效应力大小介绍
  • 原文地址:https://www.cnblogs.com/mghhzAnne/p/12418679.html
Copyright © 2011-2022 走看看