zoukankan      html  css  js  c++  java
  • python selenium click打开新窗口

    a = browser.find_elements_by_xpath("//div[@class='xx']")
    a.click()

    报错提示: Other element would receive the click

    改为如下即可:

    browser.execute_script("arguments[0].click();", a)

    打开新窗口,切换到新窗口,关闭新窗口,切换回旧窗口

    handle_main = browser.current_window_handle
    
    a = browser.find_elements_by_xpath("//div[@class='xx']/a[1]")  # a[1]就是第一个a标签  当前元素下xpath为"./div[1]/a[2]"
    browser.execute_script("arguments[0].click();", a)
    
    handle_all = browser.window_handles  # 只有2个窗口时
    for h in handle_all:
        if h != handle_main:
            handle_new = h
    browser.switch_to.window(handle_new)
    
    browser.close()
    browser.switch_to.window(handle_main)
    

    滚动到指定位置:

    js = "window.scrollTo(100, 200)"   # 对应的X Y轴
    browser.execute_script(js)
    

      

    在Js中获取X,Y轴坐标

    var box=document.getElementsByClassName('user-header-personal')[0]   // 注意就算只有一个元素 也要写上[0],js默认为数组
    
    box.getBoundingClientRect().top
    box.getBoundingClientRect().left
    

      

    参考:https://blog.csdn.net/u012941152/article/details/88418812

    https://www.cnblogs.com/yoyoma0355/p/9263227.html

  • 相关阅读:
    线程与进程
    Java集合框架体系JCF
    Java异常
    抽象,接口和Object类
    Java三大特性
    面向对象
    数组
    Java 控制结构与方法
    数据类型与变量
    Java基础之入门
  • 原文地址:https://www.cnblogs.com/ycc1/p/13813389.html
Copyright © 2011-2022 走看看