安装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安装(二)的更多相关文章

  1. Python+Selenium安装及环境配置

    一.Python安装 Window系统下,python的安装很简单.访问python.org/download,下载最新版本,安装过程与其他windows软件类似.记得下载后设置path环境变量,然后 ...

  2. selenium 安装

    selenium 安装 一.chromerdriver 1.浏览器版本 1)检查谷歌浏览器版本 打开chrome输入 "chrome://version/"查看版本,如图所示: 2 ...

  3. python+selenium安装方法

    一.准备工具: 下载 python[python 开发环境] http://python.org/getit/ 下载 setuptools [python 的基础包工具] http://pypi.py ...

  4. selenium安装方式

    selenium的二种安装方式 1.在线安装:打开cmd输入, pip.ext install selenium 2.离线安装,下载selenium安装包,然后解压,在cmd中进入到解压的文件中,在运 ...

  5. Selenium 安装与配置及webdriver的API与定位元素

    1. selenium安装命令行 C:\Users\wu>cd /d E:\soft\python3.6\Scripts E:\soft\python3.6\Scripts>pip3 in ...

  6. python+selenium十:基于原生selenium的二次封装

    from selenium import webdriverfrom selenium.webdriver.support.wait import WebDriverWaitfrom selenium ...

  7. Selenium (1) —— Selenium安装与测试(101 Tutorial)

    Selenium (1) -- Selenium安装与测试(101 Tutorial) jvm版本: 1.8.0_65 selenium版本: v2.48.0 (Standalone Selenium ...

  8. selenium安装浏览器驱动

    3.0以上版本恩的selenium需要安装驱动 pip show selenium 安装驱动 1.下载驱动地址: 火狐:https://github.com/mozilla/geckodriver/r ...

  9. python selenium 安装与 chromedriver安装

    安装 pip install selenium 安装完成之后运行脚本,如果没报错那ok.但是很不幸运,我报错啦.(本人使用ubuntu16.04,python2,or python3) 贴出我的报错: ...

随机推荐

  1. Linux环境进程间通信: 共享内存

    Linux环境进程间通信: 共享内存 第一部分 共享内存可以说是最有用的进程间通信方式,也是最快的IPC形式.两个不同进程A.B共享内存的意思是,同一块物理内存被映射到进程A.B各自的进程地址空间.进 ...

  2. jquery删除当前行

    <tr><td><input type='hidden' name='annex' value="+rs+"><a href='javas ...

  3. Java中集合随笔

    先上一张图:关于collection接口的 一.Collection中的常用功能: boolean add(Object e): 向集合中添加元素void clear():清空集合中所有元素boole ...

  4. JAVA格式化解析日期

  5. tomcat解析

    tomat是一个servlet容器,来处理http请求.在平时的使用中我们都会再浏览器中输入http地址来访问服务资源,比如格式http://host[":"port][abs_p ...

  6. CF1066D Boxes Packing(二分答案)

    题意描述: 你有$n$个物品,每个物品大小为$a_i$,$m$个盒子,每个盒子的容积为$k$.$Maksim$先生想把物品装入盒子中.对于每个物品,如果能被放入当前的盒子中,则放入当前盒子,否则换一个 ...

  7. PHP的抽象类和抽象方法以及接口总结

    PHP中的抽象类和抽象方法自己用的不多,但是经常会在项目中看到别人使用,同样,今天在看别人的代码的时候,发现使用了抽象类,就总结下: 抽象类:1.如果一个类中有一个方法是抽象方法,则这个类就是抽象类: ...

  8. JQ中的选择器children()和find()区别

    1:children及find方法都用是用来获得element的子elements的,两者都不会返回 text node,就像大多数的jQuery方法一样. 2:children方法获得的仅仅是元素一 ...

  9. 30行代码实现js原生三级联动菜单

    var oneArr=[['00','成都'],['01','绵阳'],['02','南充']] var towArr={ '00':[['000','武侯区'],['002','锦江区']], '0 ...

  10. thinkphp3.2.3 HTML 页面跳转

    1.   http://域名/index.php(入口文件)/模块/控制器/方法 2.{:U('控制器/方法')}