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 中的弹出框和警告框插件. 一.弹出框 弹出框即点击一个元素弹出一个包含标题和内容的 ...
随机推荐
- curl:(6) Could not resolve host: baidu.com; Unknown error
问题描述 有段时间没操作CentOS了,然后启动Virtualbox中的CentOS之后,发现网络不通,ping baidu.com 出现错误 curl:(6) Could not resolve h ...
- iverilog_makefile
makefile run: iverilog -g2005-sv -I ../inc -s tb -f filelist -o kout sim: vvp kout flist: find ../rt ...
- Day 22 22.1.2:增量式爬虫 - 场景2的实现
场景2的实现: 数据指纹 使用详情页的url充当数据指纹即可. 创建爬虫爬虫文件: cd project_name(进入项目目录) scrapy genspider 爬虫文件的名称(自定义一个名字即可 ...
- Linux详解
什么是操作系统?1.操作系统:(Operating System,OS)是计算机系统中的一个系统软件,它们管理和控制计算机系统中的硬件及软件资源,为用户提供一个功能强大.使用方便的和可扩展的工作环境. ...
- Django 知识点总结
知识点总结 一.URL: 1.在python 正则表达式中,正则表达式命名组的语法是(?P<name>pattern),其中命名组中的命名就是name,并且pattern 是某些匹配的模式 ...
- C++实现单链表相关操作
#include<iostream>#include<cstdlib>//C++动态分配存储空间using namespace std;#define OK 1#define ...
- vue 3 打印 print-js
1.安装 npm install print-js --save 2.引用 import print from 'print-js' 3.编写打印函数 const enterDialog = asyn ...
- 循环for in 和for of
for in 和for of都是前端循环工具 我平时用for in比较多一点 但是今天来看一下两者的区别 先声明一个对象和一个数组 分别使用for in和for of分别查看得到的结果 var arr ...
- vue3中使用vite-ts构建项目时tsconfig.json的配置
在上一次创建vue3项目在tsconfig.json中配置了文件别名以后,格式校验提示 es3什么鬼,便去看了一下tsconfig.json的配置,以此学习 { "compilerOptio ...
- C/C++ FILE 和 fstream 用法详解
FILE 是C语言自带的文件操作结构体, fstream 是C++的文件操作类,两者使用都比较常见,且用法比较类似,再次记录. 功能 FILE fstream 打开文件 FILE* fopen(cha ...
