鼠标操作

键盘操作

下拉框

弹出框

滚动条

 1 from time import sleep
2 from selenium import webdriver
3
4 driver = webdriver.Edge()
5
6 driver.get('file:///C:/Users/Administrator/Desktop/test/pagetest/%E6%B3%A8%E5%86%8CA.html')
7
8 js = "window.scrollTo(0,2000)"
9 driver.execute_script(js)
10 sleep(2)
11 js = "window.scrollTo(2000,100)"
12 driver.execute_script(js)
13
14 sleep(2)
15
16 driver.quit()

强制/隐式/显式等待

 1 from selenium import webdriver
2 from selenium.webdriver.common.by import By
3 from time import sleep
4 from selenium.webdriver.support.wait import WebDriverWait
5
6 driver = webdriver.Edge()
7
8 # 测试网站
9 driver.get('file:///C:/Users/Administrator/Desktop/test/pagetest/%E6%B3%A8%E5%86%8CA.html')
10
11 # 强制等待(加长的程序的运行时间,而且程序变得不可控)
12 # sleep(5)
13 # driver.find_element('xpath','/html/body/div/div[2]/div/input').send_keys('1231421')
14 # sleep(5)
15 # driver.find_element('xpath','/html/body/div/div[2]/div/input[2]').send_keys('fafasffa')
16
17 # 隐式等待(需要等待的我来等待,不需要等待的我直接加载不等待,期间会不断的去检查浏览器有没有加载出来,消耗资源大)
18 driver.implicitly_wait(2)
19
20 driver.find_element('xpath','/html/body/div/div[2]/div/input').send_keys('1231421')
21 driver.find_element('xpath','/html/body/div/div[2]/div/input[2]').send_keys('fafasffa')
22
23 # # 显示等待(需要等待的我来等待,不需要等待的我直接加载不等待,特定时间区去检查一次,消耗资源更少)
24
25 # element = WebDriverWait(driver,10,2).until(lambda x:x.find_element('xpath','/html/body/div/div[2]/div/input'))
26 # element = WebDriverWait(driver,5,2).until_not(lambda x:x.find_element('xpath','/html/body/div/div[2]/div/input'))
27 # element.send_keys('123123124')
28
29 # until(method, message='')
30 # 调用该方法体提供的回调函数作为一个参数,直到返回值为True
31 # until_not(method, message='')
32 # 调用该方法体提供的回调函数作为一个参数,直到返回值为False
33
34 sleep(8)
35
36 driver.close()

selenium+鼠标操作+键盘操作+下拉框+弹出框+滚动条+三种等待--代码的更多相关文章

  1. 基于Selenium2+Java的UI自动化(6)-操作Alert、confirm、prompt弹出框

    alert.confirm.prompt这样的js对话框在selenium1 时代处理起来比价麻烦,常常要用autoit来帮助处理.而现在webdriver对这些弹出框做了专门的处理,使用seleni ...

  2. selenium 鼠标,键盘操作

    1.鼠标操作 导包:from selenium.webdriver.common.action_chains import ActionChains 1.context_click()        ...

  3. css+html+js实现多级下拉和弹出菜单

    本文将使用css+html+js实现横向菜单.具有多级弹出菜单下拉. 首先我们来看看效果图: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvajkwMzgy ...

  4. ⒁bootstrap组件 工具提示框 弹出框 警告框 基础案例

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. 通过jquery获得某个元素的位置, 透明div, 弹出框, 然后在旁边显示toggle子级联菜单-hover的bug解决

    jquery的"筛选选择器", 都是用冒号开头的, 即, 冒号选择器就是 筛选选择器.如: :first, :last, :eq(index), :first-child,...等 ...

  6. vue--vant组件库Dialog弹出框

    安装vant UI框架: cnpm install vant –-save-dev 导入组件-在main.js里: import Vant from 'vant'; import'vant/lib/v ...

  7. Bootstrap-Plugin:弹出框(Popover)插件

    ylbtech-Bootstrap-Plugin:弹出框(Popover)插件 1.返回顶部 1. Bootstrap 弹出框(Popover)插件 弹出框(Popover)与工具提示(Tooltip ...

  8. bootstrap 弹出框点击其他区域时弹出框不消失选项设置

    默认情况下,bootstrap 弹出框点击其他区域时,弹出框会自动关闭,在很多时候,我们可能会希望达到和原生弹出框一样的效果,避免不小心点击其他区域时弹框自动隐藏,尤其是对于一些复杂的表单,重复填写可 ...

  9. Bootstrap 弹出框和警告框插件

    一.弹出框 弹出框即点击一个元素弹出一个包含标题和内容的容器. //基本用法 <button class="btn btn-lg btn-danger" type=" ...

  10. 第二百四十六节,Bootstrap弹出框和警告框插件

    Bootstrap弹出框和警告框插件 学习要点: 1.弹出框 2.警告框 本节课我们主要学习一下 Bootstrap 中的弹出框和警告框插件. 一.弹出框 弹出框即点击一个元素弹出一个包含标题和内容的 ...

随机推荐

  1. CUDA kernel使用printf调试,一定要加cudaDeviceSynchronize

    #include <stdio.h> __global__ void print() { printf("Hello from (%d, %d)\n", blockId ...

  2. onnxruntime源码解析之C接口简介

    一.C接口 1. 简介 其他语言的接口都是在C接口的基础上,进一步的封装. C的接口头文件为:onnxruntime_c_api.h 头文件内包含了详细的注释和说明. 总体上,除了一些数据结构的定义, ...

  3. 《Vue.js 3.x高效前端开发(视频教学版)》简介

    #好书推荐##好书奇遇季#<Vue.js 3.x高效前端开发(视频教学版)>,京东当当天猫都有发售.本书配套示例源码.PPT课件.思维导图.数据集.开发环境与答疑服务. 本书通过对Vue. ...

  4. 如何从相机拍照建立的Fileprovider中获取绝对路径

    我们通过高版本获取的fileprovider,然后拍了个照片,如下 imageUri = FileProvider.getUriForFile 但是我们发现当我们 File file = new Fi ...

  5. Redis 突然变慢了如何排查并解决?

    业务场景 某购物平台打算举行"双十一"大型购物狂欢活动,到了半夜12点用户数量暴增,出现了一个技术故障,用户发现自己无法下单!!! 技术组立即组织人手进行故障排查,结论是 Redi ...

  6. egg开发系列--模板语法

    在这里列一下 nunjucks 常用的模板内容 首先需要在plugin.js 当中引入 exports.nunjucks = { enable: true, package: 'egg-view-nu ...

  7. Linux基本概念

    目录 1. 内核.内核态和用户态 2. 用户和组 3. 文件和文件系统 4. I/O模型 5. 程序.进程.线程和协程 6. shell.终端和会话 1. 内核.内核态和用户态 ​ 内核是指管理和分配 ...

  8. CSS之小知识

    1.居中 a.文字水平居中 text-align:center; b.文字垂直居中 /* 如果有n行文字,那么将行高设为容器高度的n分之一 */ height: 35px; line-height: ...

  9. 39.Feign

    Java方式配置 /**局部**/ @FeignClient(value = "user-center", /*修改(user-center)feign的日志级别*/ config ...

  10. CF1786E题解

    容易为本题的弱化版CF1786C想出一个贪心: #include<bits/stdc++.h> using namespace std; #define int long long int ...