python selenium自动化常用关键字
工具安装:
1.安装python
2.安装selenium库(dos命令下进入selenium-2.53.2存放路径,执行pip install selenium-2.53.2)
3.将浏览器驱动放到python安装文件夹中,且存放路径一定是配置环境变量path路径中
4.安装pycharm工具
5.设置pycharm工具

一:定位八种方法

例如:

二:常见的webdriver方法
1.浏览器相关:(打开浏览器先导入webdriver模块)
(1)set_window_size(480,800)调整浏览器宽高大小
(2)maximize_window()浏览器最大化
(3)back()向后
(4)forward()向前
(5)refresh()刷新
(6)close()关闭当前浏览器
(7)quit()关闭所有浏览器
(8)js = "window.scrollto(300,200)" #300表示左边距,200表示上边距
(9)浏览器属性(句柄)
current_window_handle 当前页面的句柄
window_handles 当前所有的句柄
(10)switch_to_window() 切换窗口(一般通过句柄切换)

2.文本按钮操作相关:
(1)send_keys()输入文本
(2)clear()清除文本
(3)click()点击按钮
(4)submit()类似输入文本后回车
(5)size返回元素的尺寸
(6)text获取文本
(7)get_attribute(type)获取属性值

3.鼠标相关
(1)context_click()右击
(2)double_click()双击
(3)drag_and_drop()拖动
(4)move_to_element()鼠标悬停
(5)perform()执行

4.等待相关
(1)implicitly_wait()隐式等待,灵活性好
(2)time.sleep()等待

5.复选框相关
6.下拉框处理
(1)select模块定位
from selenium.webdriver.support.select import Select
#导入select模块
Select提供了三种选择方法:
select_by_index(index) ——通过选项的顺序,第一个为 0
select_by_value(value) ——通过value属性
select_by_visible_text(text) ——通过选项可见文本
Select提供了四种方法取消选择:(只能取消选择多选选项)
deselect_by_index(index)
deselect_by_value(value)
deselect_by_visible_text(text)
deselect_all()

(2)二次定位(基本思路,先定位 select 框,再定位 select 里的选项)

7.iframe相关
(1)switch_to.frame()选择一个frame---只能用id或name定位frame

(2)假如iframe没有可定位的id或name那么可以通过xpath先定位到iframe,再将对象传给switch_to.frame():如下
iframe_xpath=driver.find_element_by_xpath('//*[@class="if"]')
driver.switch_to.frame(iframe_xpath)
.......
(3)switch_to.default_content()取消选择一个frame(跳回最外层的页面)
switch_to.parent _content()取消选择一个frame(跳出当前frame)
8.弹窗相关
(1)switch_to_alert().accept() #确定
(2)switch_to_alert().dismiss() #取消
(3)browser.switch_to_alert().text #获取弹框信息

9.调用selenium下的by库里的By模块
(1)先导库:from selenium.webdriver.common.by import By
(2)再定位元素:driver.find_element(By.ID,'kw')
10.数据精度调整,保留小数位数

python selenium自动化常用关键字的更多相关文章
- python中selenium自动化常用关键字
一:定位八种方法 例如: 二:常见的webdriver方法 1.浏览器相关:(打开浏览器先导入webdriver模块) (1)set_window_size(480,800)调整浏览器宽高大小 (2) ...
- python selenium(常用关键字)
1.文本按钮操作相关: send_keys()输入文本 from selenium import webdriver import time dr = webdriver.Chrome() dr.ge ...
- Python+Selenium自动化总结
Python+Selenium自动化总结 1.环境搭建 1.1.安装selenium模块文件 pip install selenium 1.2.安装ChromeDriver驱动 [1]下载安装Chro ...
- Python+Selenium自动化-模拟键盘操作
Python+Selenium自动化-模拟键盘操作 0.导入键盘类Keys() selenium中的Keys()类提供了大部分的键盘操作方法:通过send_keys()方法来模拟键盘上的按键. # ...
- python selenium自动化点击页面链接测试
python selenium自动化点击页面链接测试 需求:现在有一个网站的页面,我希望用python自动化的测试点击这个页面上所有的在本窗口跳转,并且是本站内的链接,前往到链接页面之后在通过后退返回 ...
- python+selenium自动化登录dnf11周年活动界面领取奖励登录部分采坑总结[1]
背景: Dnf的周年庆活动之一,游戏在6月22日 06:00~6月23日 06:00之间登陆过游戏后可以于6月25日 16:00~7月04日 06:00领取奖励 目标:连续四天自动运行脚本,自动领取所 ...
- Python+selenium 自动化-启用带插件的chrome浏览器,调用浏览器带插件,浏览器加载配置信息。
Python+selenium 自动化-启用带插件的chrome浏览器,调用浏览器带插件,浏览器加载配置信息. 本文链接:https://blog.csdn.net/qq_38161040/art ...
- Python+Selenium自动化-定位一组元素,单选框、复选框的选中方法
Python+Selenium自动化-定位一组元素,单选框.复选框的选中方法 之前学习了8种定位单个元素的方法,同时webdriver还提供了8种定位一组元素的方法.唯一区别就是在单词elemen ...
- Python+Selenium自动化-设置等待三种等待方法
Python+Selenium自动化-设置等待三种等待方法 如果遇到使用ajax加载的网页,页面元素可能不是同时加载出来的,这个时候,就需要我们通过设置一个等待条件,等待页面元素加载完成,避免出现 ...
随机推荐
- .Net基础篇_学习笔记_第五天_流程控制while循环003
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- 编译gaia
./rkst/mkimage.sh rk3066-eng -j8 gaia 分别是编译文件路径 编译的输出类型 处理器分配数 待编译模块 //flash gaia1. adb remount2. ad ...
- Cookie的获取
1.先创建Cookie对象,设置Cookie的键和值: Cookie cookie1="); Cookie cookie2="); Cookie cookie3="); ...
- charles 禁用缓存
本文参考:charles 禁用缓存 No caching Settings/无缓存工具的用法 弹窗面板上一句话概括了他的工作原理:通过修改请求和响应头来防止缓存; 无缓存工具 无缓存工具阻止客户端应用 ...
- CabloyJS带你轻松走进NodeJS全栈开发-免费课程 作者亲授
课程说明 B站直播 为回馈新老同学对开源框架CabloyJS的支持与厚爱,快速而轻松的开启NodeJS全栈开发之旅.2019年9月5日至9月11日在B站开启了一波免费直播培训课程 课程信息,请点击链接 ...
- jmeter 查看结果树数据分析 优化
1.点击查看结果树,配置 2.筛选功能项
- hadoop生态系列
1.hadoop高可用安装和原理详解 2.hadoop2.7+spark2.2+zookeeper3.4.简单安装 3.windows下通过idea连接hadoop和spark集群 4.hadoop2 ...
- Linux线程唤醒与等待
生产者消费者模式在程序设计中出现频率非常高,经常会有线程间通过消息队列或其他共享变量进行交互的场景.而这时就会出现一个问题,消费者如何知道生产者已经生产了数据呢?有的程序会采取消费者循环判断消息队列大 ...
- Centos6安装MySQL5.7(yum方式)
1. 下载并安装用来配置mysql的yum源的rpm包 # 下载 wget http://repo.mysql.com/mysql57-community-release-el6-10.noarch. ...
- Python学习笔记整理总结【Django】:Model操作(一)
Model操作(一) 一.Django ORM基本配置 ORM:关系对象映射(Object Relational Mapping,简称ORM)db Frist:到目前为止,当我们的程序涉及到数据库相关 ...