工具安装:

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自动化常用关键字的更多相关文章

  1. python中selenium自动化常用关键字

    一:定位八种方法 例如: 二:常见的webdriver方法 1.浏览器相关:(打开浏览器先导入webdriver模块) (1)set_window_size(480,800)调整浏览器宽高大小 (2) ...

  2. python selenium(常用关键字)

    1.文本按钮操作相关: send_keys()输入文本 from selenium import webdriver import time dr = webdriver.Chrome() dr.ge ...

  3. Python+Selenium自动化总结

    Python+Selenium自动化总结 1.环境搭建 1.1.安装selenium模块文件 pip install selenium 1.2.安装ChromeDriver驱动 [1]下载安装Chro ...

  4. Python+Selenium自动化-模拟键盘操作

    Python+Selenium自动化-模拟键盘操作   0.导入键盘类Keys() selenium中的Keys()类提供了大部分的键盘操作方法:通过send_keys()方法来模拟键盘上的按键. # ...

  5. python selenium自动化点击页面链接测试

    python selenium自动化点击页面链接测试 需求:现在有一个网站的页面,我希望用python自动化的测试点击这个页面上所有的在本窗口跳转,并且是本站内的链接,前往到链接页面之后在通过后退返回 ...

  6. python+selenium自动化登录dnf11周年活动界面领取奖励登录部分采坑总结[1]

    背景: Dnf的周年庆活动之一,游戏在6月22日 06:00~6月23日 06:00之间登陆过游戏后可以于6月25日 16:00~7月04日 06:00领取奖励 目标:连续四天自动运行脚本,自动领取所 ...

  7. Python+selenium 自动化-启用带插件的chrome浏览器,调用浏览器带插件,浏览器加载配置信息。

    Python+selenium 自动化-启用带插件的chrome浏览器,调用浏览器带插件,浏览器加载配置信息.   本文链接:https://blog.csdn.net/qq_38161040/art ...

  8. Python+Selenium自动化-定位一组元素,单选框、复选框的选中方法

    Python+Selenium自动化-定位一组元素,单选框.复选框的选中方法   之前学习了8种定位单个元素的方法,同时webdriver还提供了8种定位一组元素的方法.唯一区别就是在单词elemen ...

  9. Python+Selenium自动化-设置等待三种等待方法

    Python+Selenium自动化-设置等待三种等待方法   如果遇到使用ajax加载的网页,页面元素可能不是同时加载出来的,这个时候,就需要我们通过设置一个等待条件,等待页面元素加载完成,避免出现 ...

随机推荐

  1. 史上最详 Thymeleaf 使用教程

    前言 操作前建议先参考我的另一篇博客:玩转 SpringBoot 2 快速整合 | Thymeleaf 篇 查看如何在SpringBoot 中使用 Thymeleaf.还有一点需要注意的是:模版页面中 ...

  2. UGUI_游戏界面开发Demo001

    1.Alt+Stretch:快速拉伸匹配至画布,与父类大小保持一致. 2.Anchors锚点:实现屏幕自适应 图片也可以实现自适应.Target Graphic (目标图),点击的时候,控件的效果用在 ...

  3. MapReduce原理及操作

    注意:本实验是对前述实验的延续,如果直接点开始实验进入则需要按先前学习的方法启动hadoop 部署节点操作系统为CentOS,防火墙和SElinux禁用,创建了一个shiyanlou用户并在系统根目录 ...

  4. 《即时消息技术剖析与实战》学习笔记7——IM系统的消息未读

    一.什么是消息未读 消息未读包括会话未读和总未读.前者指的是当前用户和某一聊天方的未读消息数,后者指的是当前用户的所有未读消息数,也就是所有会话未读的和.比如用户A收到用户B的2条消息,还收到用户C的 ...

  5. 手撸基于swoole 的分布式框架 实现分布式调用(20)讲

    最近看的一个swoole的课程,前段时间被邀请的参与的这个课程 比较有特点跟一定的深度,swoole的实战教程一直也不多,结合swoole构建一个新型框架,最后讲解如何实现分布式RPC的调用. 内容听 ...

  6. Day 16 软件管理

    1.RPM基本概述 1.什么是rpm? RPM全称 RPM Package Manager 缩写,由红帽开发用于软件包的安装升级卸载与查询 2.如何获取rpm包 在我们刚开始学习rpm包,建议先使用本 ...

  7. 01:***VideoToolbox硬编码H.264

    最近接触了一些视频流H264的编解码知识,之前项目使用的是FFMpeg多媒体库,利用CPU做视频的编码和解码,俗称为软编软解.该方法比较通用,但是占用CPU资源,编解码效率不高.一般系统都会提供GPU ...

  8. js数组的增删改查

    array 数组的增删改: push 从数组后面推入一个元素或多个元素 var arr = [1,2,3]; ​ // 返回:修改后数组的长度 arr.push(4,5,6); pop 删除数组最后一 ...

  9. asp.net core 使用Mysql和Dapper

    序曲:学习编程最好的方式就是敲代码,没有比这个更好的方法,哪怕你看了上百G的视频,都不如你自己敲几行代码更为有效.还有要记得敲完代码然后写一篇随笔来记录一下你所学所想. 大家都知道,.netcore是 ...

  10. 夯实Java基础系列13:深入理解Java中的泛型

    目录 泛型概述 一个栗子 特性 泛型的使用方式 泛型类 泛型接口 泛型通配符 泛型方法 泛型方法的基本用法 类中的泛型方法 泛型方法与可变参数 静态方法与泛型 泛型方法总结 泛型上下边界 泛型常见面试 ...