Selenium安装(二)
安装python
安装Selenium之前首先来说一下Python,python是一门动态性语言,python的编写比较灵活,简洁,开发效率高。因此以python结合selenium来进行自动化测试。
所以得先下载python,python下载参考https://www.python.org。建议下载python3以上的版本,python3与python2语法有区别,而且python3的库比较齐全,而且python3被认为是python的未来。
安装好python之后,python安装包路径下Scripts文件夹里面有一个pip.exe可执行程序。它其实是一个安装和管理python包的工具,类似easy_install。
安装selenium
接下来就要使用这个工具来安装selenium了。
在windows cmd窗口输入:pip install -U selenium,会出现如下内容:
黄色部分提示更新pip,可更新,按照它提示的内容输入:python -m pip install --upgrade pip,进行更新。
如果不能通过:pip install -U selenium安装selenium,报错,失败的话,可在https://pypi.python.org/pypi/selenium进行selenium包下载。然后进行解压,在解压路径下执行python setup.py install再次运行即可成功。
在windows cmd窗口输入:pip show selenium,查看selenium是否安装成功。
浏览器安装
说是浏览器安装,实质上是浏览器对应的Driver进行安装,当然前提必须是安装浏览器了。觉得chrome浏览器用的比较多一些,而且也比较好用,所以以chrome为例。http://chromedriver.storage.googleapis.com/index.html 里面包括各个版本的Driver供下载,下载Driver需对应自己安装的浏览器版本。浏览器版本可以在浏览器页面地址栏右边设置里面的帮助查看。也可以在地址栏中输入chrome://version进行查看。
选择与版本匹配的文件进行下载,并解压。找到chrome浏览器,在图标上右击打开文件所在位置,将解压完成后将chromedriver.exe该路径下面。
然后将chrome浏览器的安装目录加入到path环境变量中,让其在任意文件目录下都能够运行。
测试是否安装成功
from selenium import webdriver # 导入webdriver包 import time driver = webdriver.Chrome() # 初始化一个谷歌浏览器实例:driver
driver.maximize_window() # 最大化浏览器
time.sleep(2) # 暂停5秒钟
driver.get("https://www.baidu.com") # 通过get()方法,打开一个url站点
问题1:用pycharm编辑上述代码时,提示selenium无法找到,原因为:python安装路径下D:\python\venv\Lib\site-packages没有上面pip.exe下载的selenium,原来是下载在D:\Program Files\Lib\site-packages路径下了,将selenium拷贝到D:\python\venv\Lib\site-packages就可以了。
问题2:path环境配置之后,仍提示chromedriver找不到,需要进行驱动传入,若至传入路径,会报Application错误。
解决方法是:chromedriver="C:\Program Files\Google\Chrome\Application";driver = webdriver.Chrome(chromedriver),将此驱动进行传入。
from selenium import webdriver # 导入webdriver包 import time chromedriver = "C:\Program Files\Google\Chrome\Application\chromedriver"
browser = webdriver.Chrome(chromedriver)
browser.maximize_window() # 最大化浏览器
time.sleep(2) # 暂停5秒钟
browser.get("https://www.baidu.com") # 通过get()方法,打开一个url站点
运行以上脚本,成功打开百度网页,表示安装成功!
其他有打开雅虎网站的,修改为以下,可打开:
from selenium import webdriver
from selenium.common.exceptions import NoSuchElementException
from selenium.webdriver.common.keys import Keys
import time chromedriver = "C:\Program Files\Google\Chrome\Application\chromedriver"
browser = webdriver.Chrome(chromedriver) # Get local session of Chrome
browser.get("http://www.yahoo.com") # Load page
assert "Yahoo!" in browser.title
elem = browser.find_element_by_name("p") # Find the query box
elem.send_keys("seleniumhq" + Keys.RETURN)
time.sleep(0.2) # Let the page load, will be added to the API
try:
browser.find_element_by_xpath("//a[contains(@href,'http://seleniumhq.org')]")
except NoSuchElementException:
assert 0, "can't find seleniumhq"
browser.close()
Selenium安装(二)的更多相关文章
- Python+Selenium安装及环境配置
一.Python安装 Window系统下,python的安装很简单.访问python.org/download,下载最新版本,安装过程与其他windows软件类似.记得下载后设置path环境变量,然后 ...
- selenium 安装
selenium 安装 一.chromerdriver 1.浏览器版本 1)检查谷歌浏览器版本 打开chrome输入 "chrome://version/"查看版本,如图所示: 2 ...
- python+selenium安装方法
一.准备工具: 下载 python[python 开发环境] http://python.org/getit/ 下载 setuptools [python 的基础包工具] http://pypi.py ...
- selenium安装方式
selenium的二种安装方式 1.在线安装:打开cmd输入, pip.ext install selenium 2.离线安装,下载selenium安装包,然后解压,在cmd中进入到解压的文件中,在运 ...
- Selenium 安装与配置及webdriver的API与定位元素
1. selenium安装命令行 C:\Users\wu>cd /d E:\soft\python3.6\Scripts E:\soft\python3.6\Scripts>pip3 in ...
- python+selenium十:基于原生selenium的二次封装
from selenium import webdriverfrom selenium.webdriver.support.wait import WebDriverWaitfrom selenium ...
- Selenium (1) —— Selenium安装与测试(101 Tutorial)
Selenium (1) -- Selenium安装与测试(101 Tutorial) jvm版本: 1.8.0_65 selenium版本: v2.48.0 (Standalone Selenium ...
- selenium安装浏览器驱动
3.0以上版本恩的selenium需要安装驱动 pip show selenium 安装驱动 1.下载驱动地址: 火狐:https://github.com/mozilla/geckodriver/r ...
- python selenium 安装与 chromedriver安装
安装 pip install selenium 安装完成之后运行脚本,如果没报错那ok.但是很不幸运,我报错啦.(本人使用ubuntu16.04,python2,or python3) 贴出我的报错: ...
随机推荐
- Qgis 里的Python脚本介绍
QGIS 入门演示之<用 QGIS 画矢量交通路线图> 脚本编程之准备知识<Python 教程> QGIS API QGIS插件库 运行QGIS脚本,对于桌面应用来讲有4种方式 ...
- Mysql 基本语句 + 高级查询
MySQL执行SQL脚本文件的命令: 从cmd进入mysql命令行模式: mysql> -uroot –prootpassword –Ddatabasename 如果是我本地的数据库,就相应修改 ...
- 身份认证系统(三)什么是OAuth2
本文准备用最简单的语言告诉大家什么是OAuth2 ,OAuth2是干什么的. 我们有一个资源服务器,资源服务器中有一系列的用户数据. 现在有一个应用想想要获取我们的用户数据. 那么最简单的方法就是我们 ...
- mysql数据库迁移到oracle数据库后 如何删除相同的数据
mysql数据库迁移到oracle数据库后 如何删除相同的数据 首先搞清楚有多少数据是重复的 select pid from product group by pid having count(pid ...
- Java九阳真经论述及愿景
Java九阳真经论述及愿景 “他强由他强,清风拂山冈,他横由他横,明月照大江.” <倚天屠龙记>中张无忌被玄冥二老的玄冥神掌打伤后,体寒难耐,到处求解决之法.一次被韦蝠王打下山谷后,偶遇一 ...
- 竞赛题解 - NOIP2018 保卫王国
\(\mathcal{NOIP2018}\) 保卫王国 - 竞赛题解 按某一个炒鸡dalao名曰 taotao 的话说: \(\ \ \ \ \ \ \ \ \ "一道sb倍增题" ...
- sysbench安装
sysbench安装 1.下载软件mkdir -p /usr/local/softwarecd /usr/local/softwaregit clone https://github.com/akop ...
- What is a schema in a MySQL database?
摘自:https://www.quora.com/What-is-a-schema-in-a-MySQL-database What is schema? In MySQL, physically, ...
- Linux进程地址空间 && 进程内存布局[转]
一 进程空间分布概述 对于一个进程,其空间分布如下图所示: 程序段(Text):程序代码在内存中的映射,存放函数体的二进制代码. 初始化过的数据(Data):在程序运行初已经对变量进行初始 ...
- [].slice.call的理解
首先要说明[].slice.call()与Array.prototype.slice.call() 有什么区别? [].slice === Array.prototype.slice true []为 ...