selenium+鼠标操作+键盘操作+下拉框+弹出框+滚动条+三种等待--代码
鼠标操作

键盘操作

下拉框

弹出框
滚动条
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+鼠标操作+键盘操作+下拉框+弹出框+滚动条+三种等待--代码的更多相关文章
- 基于Selenium2+Java的UI自动化(6)-操作Alert、confirm、prompt弹出框
		
alert.confirm.prompt这样的js对话框在selenium1 时代处理起来比价麻烦,常常要用autoit来帮助处理.而现在webdriver对这些弹出框做了专门的处理,使用seleni ...
 - selenium 鼠标,键盘操作
		
1.鼠标操作 导包:from selenium.webdriver.common.action_chains import ActionChains 1.context_click() ...
 - css+html+js实现多级下拉和弹出菜单
		
本文将使用css+html+js实现横向菜单.具有多级弹出菜单下拉. 首先我们来看看效果图: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvajkwMzgy ...
 - ⒁bootstrap组件 工具提示框  弹出框 警告框 基础案例
		
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
 - 通过jquery获得某个元素的位置, 透明div, 弹出框,  然后在旁边显示toggle子级联菜单-hover的bug解决
		
jquery的"筛选选择器", 都是用冒号开头的, 即, 冒号选择器就是 筛选选择器.如: :first, :last, :eq(index), :first-child,...等 ...
 - vue--vant组件库Dialog弹出框
		
安装vant UI框架: cnpm install vant –-save-dev 导入组件-在main.js里: import Vant from 'vant'; import'vant/lib/v ...
 - Bootstrap-Plugin:弹出框(Popover)插件
		
ylbtech-Bootstrap-Plugin:弹出框(Popover)插件 1.返回顶部 1. Bootstrap 弹出框(Popover)插件 弹出框(Popover)与工具提示(Tooltip ...
 - bootstrap 弹出框点击其他区域时弹出框不消失选项设置
		
默认情况下,bootstrap 弹出框点击其他区域时,弹出框会自动关闭,在很多时候,我们可能会希望达到和原生弹出框一样的效果,避免不小心点击其他区域时弹框自动隐藏,尤其是对于一些复杂的表单,重复填写可 ...
 - Bootstrap 弹出框和警告框插件
		
一.弹出框 弹出框即点击一个元素弹出一个包含标题和内容的容器. //基本用法 <button class="btn btn-lg btn-danger" type=" ...
 - 第二百四十六节,Bootstrap弹出框和警告框插件
		
Bootstrap弹出框和警告框插件 学习要点: 1.弹出框 2.警告框 本节课我们主要学习一下 Bootstrap 中的弹出框和警告框插件. 一.弹出框 弹出框即点击一个元素弹出一个包含标题和内容的 ...
 
随机推荐
- 自考网络原理:安全套接字层SSL
			
对ssl/tls的理解 前:SSL; 后:TLS: 以下是B站上的up主讲的,非常的深入浅出,讲的很好.感谢技术蛋老师. https://www.bilibili.com/video/BV1KY411 ...
 - [Github]获取github ID号
			
[Github]获取github ID号 https://api.github.com/users/ + 你的账户名称 实例:我github账号叫iBoundary. https://api.gith ...
 - Navie UI
			
开发文档 一个 Vue 3 组件库, 它比较完整,主题可调,用 TypeScript 写的,快.
 - redis+token实现一个账号只能一个人登录
			
自己在闲着没事的时候,突然想到了这么一个小功能,于是决定练习一下,首先想到的是如果一个账号只能一个人登录,可能会出现两个情况,一种是后登录者把前者的账号顶替掉,还有一种就是后者登录的时候会有提示当前账 ...
 - 钉钉-E应用开发初体验(企业内部应用)
			
首先要创建应用,如何创建参考 https://open-doc.dingtalk.com/microapp/bgb96b/gt5d6a 下载 钉钉E应用服务端demo git clone http ...
 - 杭电oj 蟠桃记
			
Problem Description 喜欢西游记的同学肯定都知道悟空偷吃蟠桃的故事,你们一定都觉得这猴子太闹腾了,其实你们是有所不知:悟空是在研究一个数学问题!什么问题?他研究的问题是蟠桃一共有多少 ...
 - PAT-basic-1025 反转链表 java c++
			
一.题目 给定一个常数 K 以及一个单链表 L,请编写程序将 L 中每 K 个结点反转.例如:给定 L 为 1→2→3→4→5→6,K 为 3,则输出应该为 3→2→1→6→5→4:如果 K 为 4, ...
 - 浅谈前端自动化构建(Grunt、gulp。webpack)
			
前言 现在的前端开发已经不再仅仅只是静态网页的开发了,日新月异的前端技术已经让前端代码的逻辑和交互效果越来越复杂,更加的不易于管理,模块化开发和预处理框架把项目分成若干个小模块,增加了最后发布的困难, ...
 - Linux 看进程的线程数
			
pstree -p 12345|wc -l 看进程的线程数 centos7默认并没有安装pstree,所以会有pstree:command not found 安装一下 yum install psm ...
 - 微信小程序云开发,快速生成短信验证码
			
使用微信小程序云函数实现注册短信验证码的管理,并不是一件分分钟的事,目前想要存储验证码只能放到数据库中,因为存储后才能和用户提交上来的验证码做比较. 管理验证码主要涉及到:生成.存储.校验.有效期管理 ...
 
			
		