初识selenium
今天尝试了一些selenium,感觉并没有想象中那么难。整理一篇笔记出来。
笔者使用的是Python+selenium。以下内容均是基于Windows系统和Python3.5.2.
首先是下载selenium
运行cmd.exe
执行pip install selenium
然后就是浏览器,需要找到selenium支持的浏览器,我在网上百度了一下,蛮多的,但是我很懒,于是我装了一个老版的Firefox,因为Firefox里webdriver是自带的。不是我不想用新版的,我电脑上最初也是最新的Firefox,但是发现貌似不支持selenium的使用,无奈就换成了老版的。
OK,现在环境配好了。我们可以开始实现第一个简单的UI自动化的脚本。
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
#定义一个自动访问百度进行搜索
def get_search():
#通过url去打开火狐并访问百度
driver = webdriver.Firefox()
driver.get("http://www.baidu.com")
#检查标题中是否存在百度
assert "百度" in driver.title
#定位name=wd的元素
elem = driver.find_element_by_name("wd")
#模拟键盘操作,输入xx
elem.send_keys("xx")
#模拟键盘操作点击回车键
elem.send_keys(Keys.RETURN)
get_search()
首先导入selenium和selenium中模拟键盘操作的方法
然后使用webdriver打开火狐浏览器,并且访问百度
使用断言判断页面的标题是否含有“百度”

按照图中的方式,我们定位到了百度输入框在html中的位置,接下来我们使用name方法去定位输入框。
定位到输入框之后,我们就使用send.keys方法模拟键盘操作,在输入框中输入内容
然后模拟键盘进行回车,就可以跳转到我们想要搜索的内容的界面了。
一个简单的小脚本就这样实现了,并不是很难。笔者目前在尝试phantomjs进行动态页面的操作。遇到了点小问题,回头分享给大家
初识selenium的更多相关文章
- 初识Selenium(四)
用Selenium实现页面自动化测试 引言 要不要做页面测试自动化的争议由来已久,不做或少做的主要原因是其成本太高,其中一个成本就是自动化脚本的编写和维护,那么有没有办法降低这种成本呢?童战同学在其博 ...
- 初识Selenium(三)
浅谈基于Selenium的Web自动化测试框架 发表于:2011-4-25 10:58 作者:邵育亮 来源:51Testing软件测试网原创 字体:大 中 小 | 上一篇 | 下一篇 | 打印 ...
- 初识Selenium(二)
---------------------------------------------------------------------------------------------------- ...
- 初识Selenium(一)
Selenium入门相关PPT参考网址:http://wenku.baidu.com/view/d1e7d90390c69ec3d5bb7565.html?from=search 内容引用网址:htt ...
- 初识Selenium以及Selenium常用工具的简单介绍
一.为什么要学习自动化测试? 在互联网行业中敏捷开发小步快跑,快速迭代,测试环节中回归测试任务大繁琐,手工测试容易漏测,自动化测试可以提高测试效率保证产品质量. 二.学习的层次模型 1.单元自动化测试 ...
- python3初识selenium
第一步:安装与配置 1.电脑上需要有火狐浏览器(默认安装在C:\Program Files (x86)\Mozilla Firefox目录下). 2.使用pip install selenium安装好 ...
- selenium基础用法(爬虫)
初识selenium selenium最初是一个自动化测试工具,而爬虫中使用它主要是为了解决requests无法直接执行JavaScript代码的问题 selenium本质是通过驱动浏览器,完全模拟浏 ...
- 【Python爬虫】selenium基础用法
selenium 基础用法 阅读目录 初识selenium 基本使用 查找元素 元素互交操作 执行JavaScript 获取元素信息 等待 前进后退 Cookies 选项卡管理 异常处理 初识sele ...
- 2.1 Python3.5安装以及爬虫需要的环境配置
之所以选用Python,是因为对于网络爬虫来说,Python是最好上手的一种语言.本文讲述的安装配置都是基于Windows的环境. 另外我想说的是,文中用到的下载链接尽量官方网站上的下载链接,这是我比 ...
随机推荐
- ios7中的多任务
转自:http://onevcat.com/2013/08/ios7-background-multitask/ WWDC 2013 Session笔记 - iOS7中的多任务 iOS7的后台多任务特 ...
- 通过j-interop访问WMI实例代码
代码: import java.net.UnknownHostException; import java.util.logging.Level; import org.jinterop.dcom.c ...
- php大力力 [041节] 今天没有写日志哈
php大力力 [041节] 今天没有写日志哈 如何下拉,左边的side颜色 能顺延下去?? 今天做了一个表格显示
- JavaScript原型学习笔记
1 理解JavaScript原型 什么是原型? 原型是一个对象,其他对象可以通过它实现属性继承. 任何一个对象都可以成为原型么? 是 哪些对象有原型 所有的对象在默认的情况下都有一个原型,因为原型本身 ...
- Interproscan, xml文件转化为tsv
将interproscan的结果转化格式 很奇怪 tsv格式里没有go, kegg, inter-domain信息,但是xml文件里面却有,tsv文件比较好处理,所以先将xml文件转化为tsv.用软件 ...
- Can 't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock '(2) ;
Can 't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock '(2) ; 如果你在网上search这个 ...
- MACOS无限试用Cornerstone的方法
MacOS上Cornerstone用起来还是比较好用的,除了add文件目录时不把底下的文件add上去之外.其实之前用Versions也还可以,奈何太贵,买不起正版,破解版又不好用.Cornerston ...
- 【 D3.js 入门系列 --- 3 】 做一个简单的图表!
前面说了几节,都是对文字进行处理,这一节中将用 D3.js 做一个简单的柱形图. 做柱形图有很多种方法,比如用 HTML 的 div 标签,或用 svg . 推荐用 SVG 来做各种图形.SVG 意为 ...
- ADC 电源监测
我能为别人做点什么?这是我最近在思考的问题. 看了 ADC 电源监测代码,觉得对 ADC 的理解不到位,代码中有很多部分都不懂.如: 1. 为什么初始化的时候管脚设置为输出? 2. ADC 采集到的值 ...
- OJ上 G++ 与 C++ 的区别
1.输出double类型时,如果采用G++提交,scanf采用%lf,prinf采用%f,否则会报错 2.使用GCC/G++的提醒: 对于64位整数, long long int 和 __int64 ...