zoukankan      html  css  js  c++  java
  • web自动化总结

    【1】.浏览器存在多个页面时,切换到自己需要页面的方法
    1) #获取浏览器所有页面列表
    handles=self.driver.window_handles
    #从所有页面中选择自己需要的页面(下标从0开始)
    handle1=self.driver.switch_to_window(handles[1])
    2)或者通过for循坏找到对应的title

    【3】浏览器滚动到页面低端,顶端,到自己需要的元素出现方法

    网上查询到实现方法(使用火狐浏览器的时候可以实现,使用Chrome浏览器的时候未能实现):

    #coding=utf-8
    from selenium import webdriver
    import time
        
    #访问百度
    driver=webdriver.Firefox()
    driver.get("http://www.baidu.com")
        
    #搜索
    driver.find_element_by_id("kw").send_keys("selenium")
    driver.find_element_by_id("su").click()
    time.sleep(3)
        
    #将页面滚动条拖到底部
    js="var q=document.documentElement.scrollTop=10000"
    driver.execute_script(js)
    time.sleep(3)
        
        
    #将滚动条移动到页面的顶部
    js="var q=document.documentElement.scrollTop=0"
    driver.execute_script(js)
    time.sleep(3)
        
    driver.quit()

    使用下面的方法可以实现:

    driver=webdriver.Chrome()
    driver.maximize_window()
    driver.get('https://www.baidu.com/')
    driver.find_element_by_id('kw').send_keys('selenium')
    driver.find_element_by_id('su').click()
    time.sleep(3)
    #滑动到底部
    driver.execute_script("window.scrollTo(0,document.body.scrollHeight)")
    time.sleep(2)
    #滑动到顶部
    driver.execute_script("window.scrollTo(0,0)");
    time.sleep(5)
    #如果页面元素需要加载才会显示,用以下方法
    target = driver.find_element_by_id("id_keypair")
    driver.execute_script("arguments[0].scrollIntoView();", target) #拖动到可见的元素去
  • 相关阅读:
    python sys.argv[]
    python 继承
    python 类/对象
    Formily教程 | formily是中后台复杂场景的表单解决方案
    如何保障消息100%投递成功?如何保证消息幂等性
    rabbitmq延时重试队列
    IO多路复用之select、poll、epoll详解
    构建PHP微服务生态
    flutter dio 处理200以为的错误状态码
    [git] 如何查看 .patch 文件
  • 原文地址:https://www.cnblogs.com/zzzao/p/8651374.html
Copyright © 2011-2022 走看看