Selenium WebDriver + Python 环境配置
1. 下载必要工具及安装包
1.1.【Python开发环境】
下载并安装Python 2.7.x版本(当前支持2.x版本,不要下载最新的3.X的版本因为python3并非完全兼容python2)
下载地址:https://www.python.org/downloads/
1.2.【python 的安装包管理工具】Pip
pip 是python 软件包的安装和管理工具,有了这个工具,我们只需要一个命令就可以轻松的python 的任意类库。
下载地址:
https://pypi.python.org/pypi/pip
(直接拖动到页面最下方进行下载tar.gz包|MD5是文件校验)
注:或者下载下面链接文件(安装需要联网)
https://bootstrap.pypa.io/get-pip.py
1.3.【python 的基础包工具】setuptools
setuptools 是python 的基础包工具,可以帮助我们轻松的下载,构建,安装,升级,卸载python的软件包。
下载地址:
http://pypi.python.org/pypi/setuptools
(直接拖动到页面最下方进行下载tar.gz和zip包都可以|MD5是文件校验)
注:或者如果你是Win7系统可以直接下载下面链接文件(安装需要联网)
https://bootstrap.pypa.io/ez_setup.py
1.4.【Python for Selenium安装包】
主要是让集成了Selenium WebDriver的API。
下载地址:
https://pypi.python.org/pypi/selenium
2. 环境安装
因为当前我使用的window环境,所以这里只介绍window环境,如果你已经会使用Linux系统,相信Linux下面安装对你也没什么难度,安装方式都是一样的。
2.1.安装python环境:
双击下载的python for window安装包python-2.7.8.msi,下一步——下一步....即可,默认安装目录在C:\Python27,安装完成后要配置Python环境变量。(如下图)
在系统环境 path中加入python安装路径即可:
(此步骤很关键,不设置会导致其它工具包无法完成安装,因为所有工具包都使用python命令来完成的,为减少麻烦安装完Python后立即设置环境变量)
2.2.安装pip
(选择任意方式即可)
方式一:
解压下载好的安装包,cmd窗口中进入解压目录使用下面命令进行安装
D:\Downloads\setuptools-5.7>python setup.py install
然后进入C:\Python27\Scripts目录中执行下面命令
C:\Python27\Scripts > easy_install pip
方式二:
使用下载好的get-pip.py进行安装
D:\Downloads>python get-pip.py
2.3.安装setuptools
(选择任意方式即可)
方式一:
解压下载好的安装包,cmd窗口中进入解压目录使用下面命令进行安装
D:\Downloads\setuptools-5.7>python setup.py install
方式二:
WIN7系统进入下载好的ez_setup.py目录中运行下面命令进行自动在线下载安装
D:\Downloads\setuptools-5.7>python ez_setup.py
方式三:
进入pip所在安装目录执行下面命令可以在线安装
C:\Python27\Scripts >pip install -U setuptools
2.4.安装selenium
方式一:
进入pip所在安装目录执行下面命令可以在线安装
C:\Python27\Scripts >pip install -U selenium
方式二:
把下载好的selenium包解压并将整个目录放到C:\Python27\Lib\site-packages 目
录下。
==============================================================================
至此Windows系统下Selenium Webdriver + Python环境安装完毕
==============================================================================
使用Linux的朋友安装方式除了python安装稍有不同,其它包安装方式都是一样的,包括命令都是一样的,就不再述了。
3. 脚本初体验
为了验证我们的环境是否可用,使用一个简单的脚本来演示下。就像我们初次接触开始时写的第一个次代码“hello world”一样。
(脚本中我使用的Firefox浏览器,因为IE浏览器需要装WebDriverIE插件IEDriverServer)初体验后介绍怎么安装使用。
3.1.编辑脚本
创建一个记事本文件,命名为openbaidu.py(名称可以自定义)
在文档中输入一下内容并保存:
3.2.运行脚本
打开cmd命令窗口,进入openbaidu.py所在目录运行下面命令:
D:\pub\workspace\py_selenium>python openbaidu.py
脚本运行后会自动打开Firefox浏览器,并且进入百度首页,自动输入“selenium”进行搜索,等待5秒钟后,自动关闭页面。
切换到CMD命令窗口,会看到命令行中同时输出了一行百度首页的title。
D:\pub\workspace\py_selenium>python openbaidu.py
百度一下,你就知道
D:\pub\workspace\py_selenium>
至此我们第一次体验也就完成了,下面来解析一下脚本内容:
#为防止我们在脚本中使用中文出现乱码,进行脚本转码,您在写的时候把它当作习惯写在代码第一行。
# -*- coding: utf-8 -*-
#引入我们的selenium的 webdriver包,这样我们就可以使用Webdriver API进行自动化脚本的开发。
from selenium import webdriver
#引入python的time包,可以用来获取系统时间,控制脚本运行中等待时间等。
import time
获取Firefox浏览器对象
driver = webdriver.Firefox()
调用get方法来打开百度的url地址
driver.get("http://www.baidu.com")
#通过id=kw定位搜索框界面元素,在调用clear()方法来清除搜索框内容(find_element_by_id是通过id方式定位界面元素的,定位元素方法很多种,这里使用id来定位其它方法,以后再介绍)
driver.find_element_by_id("kw").clear()
#通过send_keys方法来,发送我们要搜索的内容 "selenium"(同样还需先定位搜索框元素)
driver.find_element_by_id("kw").send_keys("selenium")
#通过id=su定位搜索按钮,并通过click()方法进行提交搜索。
driver.find_element_by_id("su").click()
#打印当前浏览器页面中的title
print driver.title
#等待5秒,只脚本在这里停留5秒后再向下执行
time.sleep(5)
#退出并关闭浏览器窗口程序
driver.quit()
通过上面内容我们基本见识了下python的语法,是多么的人性化的语言。
clear()清除 send_keys() 发送关键字 click()点击 sleep()休眠 quit()退出
看到这些后,是不是感觉很easy,其实只要你学会python,一切都会变得更简单,python真的是个无所不能的语言,试试看你的第一个脚本吧。
4. 浏览器插件下载与安装
WebDriver 支持Firefox (FirefoxDriver)、IE (IEDriverServer)、Opera (OperaDriver) 和
Chrome (ChromeDriver) 。它还支持Android (AndroidDriver)和iPhone (IPhoneDriver) 的移动应用测试。
4.1. 下载地址
各个浏览器驱动下载地址:
https://code.google.com/p/selenium/downloads/list
上面链接中没用IEDriverServer了,进下面地址也可以下载
http://download.csdn.net/download/tsbc520/7812523
或者百度、Google搜索其它地方下载也可以。
4.2.安装使用
下载后将解压的IEDriverServer.exe或者ChromeDriver.exe放置Python目录(C:\Python27\目录下)中就可以在脚本中直接调用了。
我们替换上面在Firefox浏览器中运行的脚本例子:
driver = webdriver.Firefox()
替换为:
driver = webdriver.Ie()
或
driver = webdriver.Chrome()
(如果IE下启动有问题,试试改一下IE浏览器安全选项中的保护模式,四个选项全部改成统一的模式,全“启用”或者全“不启用”)
Selenium WebDriver + Python 环境配置的更多相关文章
- 【转】Selenium WebDriver + Python 环境
转自:http://www.myext.cn/webkf/a_11878.html 1. 下载必要工具及安装包 1.1 [Python开发环境] 下载并安装Python 2.7.x版本 下载地址:ht ...
- python + selenium WebDriver的环境配置
想试用python语言来学习selenium WebDriver,首先需要搭建一个测试环境,从python安装到浏览器插件配置的详细步骤,总结如下: 一.python环境配置 1.从官网下载最新的一个 ...
- selenium webdriver python 环境搭建
1. 安装python https://www.python.org/getit/ 选择2.7版本,下载安装即可. 验证是否安装成功:打开cmd,输入"python -V",显示p ...
- selenuim +python环境配置遇到的诸多问题
自动化测试入门,总结一下安装selenium.python以及配置webdriver遇到的问题: 准备工作: 1.下载火狐浏览器并安装插件selenium IDE.Firebug~~ 2.下载安装py ...
- Selenium WebDriver + python 自动化测试框架
目标 组内任何人都可以进行自动化测试用例的编写 完全分离测试用例和自动化测试代码,就像写手工测试用例一下,编写excel格式的测试用例,包括步骤.检查点,然后执行自动化工程,即可执行功能自动化测试用例 ...
- selenium webdriver (python)大全
webdriver的简介 硒2.0的主要新功能是集成的webdriver的API.webdriver的设计除了解决一些seleniumr-RC API的一些限制,与webdriver 的整合,将提供一 ...
- selenium 安装与环境配置
selenium的安装 环境配置:python2.7+selenium2+Firefox46以下版本 本次安装环境:python2.7.13+selenium2.53.6+Firefox46 官网下载 ...
- selenium webdriver (python)
selenium webdriver (python) 第一版PDF Posted on 2013-08-30 22:59 虫师 阅读(221) 评论(0) 编辑 收藏 前言 如果你是一位有pytho ...
- 1 python学习——python环境配置
1 python学习--python环境配置 要学习python语言,光看书看教程还是不好,得动手去写.当然,不管学习什么编程语言,最佳的方式还在于实践. 要实践,先得有一个Python解释器来解释执 ...
随机推荐
- 浅谈thinkphp中将字符串转换成json数组的方法
这是一部分代码: $client = M("Client");$data = $client->where('user_id ='.$user_id)->select( ...
- PHP中的赋值运算符
PHP的赋值运算符有两种,分别是: (1)“=”:把右边表达式的值赋给左边的运算数.它将右边表达式值复制一份,交给左边的运算数.换而言之,首先给左边的运算数申请了一块内存,然后把复制的值放到这个内存中 ...
- visio的简单用法
visio图边缘会自动扩展 将常用工具放到收藏夹中,拖进去就可以用. 基本形状基本能够满足一般的需求. 支持自己定义形状,将定义好的形状右击组合之后,收藏到收藏夹或导出模版. 多用组合,收藏夹,调整图 ...
- DMA-330(二)
DMA内部的block diagram: DMAC包含一个instruction processing block,来process program code,control DMA transfer ...
- js同步访问后台资源
$.ajax( { type : 'post', url : url, data : data, async : false,//false代表只有在等待ajax执行完毕后才执行window. ...
- emulator-arm.exe 已停止工作、 emulator-x86 已停止工作
问题描述: emulator-arm.exe 已停止工作. emulator-x86 已停止工作.AVD模拟器启动一直黑屏.AVD模拟器启动一直显示andorid界面 解决方法: 1. sdk的安 ...
- 高并发应用中客户端等待、响应时间的推算,及RT/QPS概念辨析
高并发应用中客户端等待.响应时间的推算,及RT/QPS概念辨析 对于一个网站,已知服务端的服务线程数和处理单个请求所需的时间时,该如何算出高并发时用户从点击链接到收到响应的时间?注意这个时间并不等于服 ...
- knockout之入门介绍
Knockout是一个轻量级的UI类库,通过应用MVVM模式使JavaScript的前端UI简单化.Knockout是一个以数据模型(data model)为基础的能够帮助你创建丰富文本,响应显示和编 ...
- 启用 TStringGrid 的自画功能,并避免重影
FMX 控件的 TStringGrid 下,有时为了让不同行或不同 Cell 的显示颜色.字体等有各种不同的颜色, 必须采用自画, 即在其 OnDrawColumnCell 事件中写自己的控制代码显示 ...
- 电脑远程工具:mstsc
外网远程控制:电脑远程连接在开始程序中搜:mstsc 然后直接敲IP地址 工具:dell sonicwall netextender.exe mstsc.exe 内网远程控制:使用TeamVi ...