Selenium常见方法
1、打开和关闭浏览器
打开浏览器
driver=webdriver.Ie()
driver=webdriver.Chrome()
driver=webdriver.Firefox()
关闭浏览器
driver.close()
关闭浏览器以及浏览器驱动程序
driver.quit()
2、打开 Url
driver.get("url 地址")
3、切换框架/窗口(使用 switch_to 包)
定位到当前聚焦的元素上
driver.switch_to.active_element()
切换到 alert 弹窗
driver.switch_to.alert()

|
1
2
3
4
5
6
7
8
|
# 获取alert对话框dig_alert = driver.switch_to.alerttime.sleep(1)# 打印警告对话框内容print(dig_alert.text)# alert对话框属于警告对话框,我们这里只能接受弹窗dig_alert.accept()time.sleep(1) |
切换到某个 frame
driver.switch_to.frame(index或 name)
index从0开始
切换到主页面
driver.switch_to.default_content()
切换到上一层的 frame
driver.switch_to.parent_frame()
切换窗口
driver.switch_to.window(handle)
如何获取handle?
通过driver.window_handles 方法获取当前浏览器所有窗口的handle
通过循环切换窗口判断标题的方法来确定当前窗口是否为目标窗口
保留当前窗口handle:driver.current_window_handle
4、页面元素的属性和方法
获得网页标题
driver.title()
获得当前窗口地址栏URL
driver.current_url
获得页面元素的文本值(属于属性)
对象.text
获得指定属性的值
对象.get_attribute("属性名")
获取元素对应的HTML片段
获取整个web元素的HTML片段
element.get_attribute("outerHTML")
获取web元素内部子元素的HTML片段
element.get_attribute("innerHTML")
Select(对象)的操作
需要导入包:from selenium.webdriver.support.select import Select
根据索引选择元素
select_by_index
根据文本选择元素
select_by_visible_text
取消所有选项
deselect_all()
取消对应 index 选项
deselect_by_index()
取消对应 value 选项
deselect_by_value()
取消对应文本选项
deselect_by_visible_text()
返回第一个选项
first_selected_option()
返回所有的选项
all_selected_options()
用于键盘输入数据
element.send_keys("数据")
点击元素(支持单选按钮、 复选框、 命令按钮)
element.click()
5、刷新页面,前进,后退
driver.refresh()
driver.forward()
driver.back()
6、截屏:
截取整个页面:driver.get_screenshot_as_file(img_path)
截取单个元素: web_element screenshot(img_path)
# img_path是图片路径,类型str
7、改变窗口大小
将窗口最大化
driver.maximize_window()
将窗口最小化
driver.minimize_window()
获取窗口大小
size = driver.get_window_size()
改变窗口大小(传递宽度和高度,单位是像素)
driver.set_window_size(1100,size['height'])
8、滚动屏幕
js语言:window.scrollBy(250,0) 就是横向滚动250个像素
selenium里面使用js代码
driver.execute_script('window.scrollBy(200,0)')
Selenium常见方法的更多相关文章
- [python爬虫] Selenium常见元素定位方法和操作的学习介绍(转载)
转载地址:[python爬虫] Selenium常见元素定位方法和操作的学习介绍 一. 定位元素方法 官网地址:http://selenium-python.readthedocs.org/locat ...
- Python爬虫突破封禁的6种常见方法
转 Python爬虫突破封禁的6种常见方法 2016年08月17日 22:36:59 阅读数:37936 在互联网上进行自动数据采集(抓取)这件事和互联网存在的时间差不多一样长.今天大众好像更倾向于用 ...
- Selenium switch_to方法
在web应用自动化测试中,点击一个链接或者按钮会打开一个新的浏览器窗口,会出现多个窗口实例.默认情况下的焦点在主窗口(父窗口),如果要对子窗口进行操作,就需要首先切换到子窗口. Selenium We ...
- C#图片处理常见方法性能比较
C#图片处理常见方法性能比较 来自:http://www.cnblogs.com/sndnnlfhvk/archive/2012/02/27/2370643.html 在.NET编程中,由于GDI ...
- window对象中的常见方法
<body><!-- window对象中的常见方法--><script type="text/javascript"> var timeid; ...
- python socket 常见方法及 简单服务/客户端
socket 常见方法: 补充说明:what is file descriptor? 文件描述符是什么? 参考(http://stackoverflow.com/questions/8191905/w ...
- VBS操作Excel常见方法
VBS操作Excel常见方法 作者: 字体:[增加 减小] 类型:转载 时间:2009-11-13我要评论 VBS控制Excel常见方法,需要的朋友可以参考下. dim oExcel,oWb,oShe ...
- selenium常见的疑问和问题
.确认(verifation)和断言(assert)有什么区别? 确认:当测试中的一个用例存在错误时,系统将会继续运行这些测试 断言:当测试中的一个用例存在错误时,系统将会退出当前用例 总而言之 ...
- UIPickerView常见属性、常见方法(包括代理方法和数据源方法)的一些说明
一.UIPickerView 1.UIPickerView的常见属性 // 数据源(用来告诉UIPickerView有多少列多少行) @property(nonatomic,assign) id< ...
- jQuery ajax调用后台aspx后台文件的两种常见方法(不是ashx)
在asp.net webForm开发中,用Jquery ajax调用aspx页面的方法常用的有两种:下面我来简单介绍一下. [WebMethod] public static string SayHe ...
随机推荐
- Azkaban 4.0.0 系列(一)-- Solo-Server
下载 链接 https://github.com/azkaban/azkaban/releases/4.0.0.tar.gz 解压 tar -xzvf 4.0.0.tar.gz -C 自定义目标目录 ...
- 解决Ubuntu下的的“system program problem detected”问题
解决Ubuntu下的的"system program problem detected"问题 1.删除crash文件 sudo rm /var/crash/*2.关闭pop up功 ...
- vue-vite-ts 新版
Vue 后台管理系统 一.系统创建 1.1.环境检测 $ node -v v18.10.0 $ npm -v 9.1.2 ## 若没有该命令 需要用 npm install -g pnpm 安装 $ ...
- 很抱歉,无法安装Office(64位),因为您的计算机上已经安装了这些32位Office程序
可使用下面的方法获取最新最全的Win10 KEY: 1.请加微信公众号号:jiangivana 或扫一扫下面的二维码. 2.加微信公众号以后回复[key]将获得最新最全的Win10密钥. 64位与32 ...
- 2019-2020-1 20199318《Linux内核原理与分析》第八周作业
第7章 可执行程序工作原理 一.学习笔记 1.ELF 2.程序编译 3.连接与库 二.试验记录 1.开始先更新内核,再用test_exec.c将test.c覆盖掉 2.test.c文件中增加了exec ...
- Python生成whl文件
下载源码包,生成whl文件 python setup.py bdist_wheel
- 【SSO单点系列】(1):CAS4.0 之环境的搭建
[SSO单点系列](1):CAS4.0 环境的搭建 一.概述 今天开始写CAS相关的第一篇文章,这篇文章主要是关于CAS环境的搭配,提供给刚刚接触CAS的一个入门指南,并演示一个CAS的最简单的实例 ...
- java redis 获取key 剩余时间
/** * 查询key的生命周期 * @param key redis 存数据的键 * @return 默认单位秒,也可以自行传入单位 */public long getKeyExpire(Strin ...
- holiday04
第四天 查看文件内容 命令 英文 作用 cat 文件名 concatenate 查看.创建.合并.追加文件等功能 more 文件名 more 分屏显示文件内容 grep 搜索文本 文件名 grep 搜 ...
- net/http
客户端 GET POST form表单 json body二进制流 上传文件 PUT DELETE HEAD 重定向 Client Request Response Cookie CookieJar ...