• Selenium Python 安装指导


    最近无聊。又重新装了个selenium

    果然时代变了。安装的时候的方法和以前不太一样了。因此觉得有必要单列出来加以说明

    另外备注:测试小伙伴们。安装此类工具报错。尝试以下两个方案之一:

      1.请转stackoverflow

      2.code review

    下面以第二种方法解决安装问题

    如果你还看的是非官方文档的安装使用方法。而是某些旧社会的博客。那么很可能你就这样中奖了。

    正确的安装姿势应该是这样的(以 chrome + python + selenium 为例):

      1.  打开 https://chromedriver.storage.googleapis.com/index.html

      2.  找到最新版本(备注:2.30代表的版本大于2.9.此处2.9相当于2.09.不得不吐槽一下这个版本号设定)

      3.  下载对应版本(备注:windows平台下。没有64位exe插件。但是32位的可以兼容64位)

      4.  确认已安装的python版本(大于selenium标注的版本。一般而言最新版是向下兼容3.x的版本的。)

      5.  自己下载selenium包 或者使用 pip install selenium 命令解决问题

    至此。安装已经完成(感觉比当年用的时候要更快)

    接下来是使用的方法:

      A.  示例代码

      

      B.  内容说明

        1. 第八行必须传入executable的值。(即将截图中代码第八行改为: driver = webdriver.Chrome(executable).)

          此处由于早先的selenium的设计模式。之前selenium是通过环境变量设置来识别执行路径的。

          现在源码的相关部分已经更改。因此使用selenium也无需配置环境变量了。

        2. 第十行必须使用完整的url链接(url包含前缀http://或https://)。否则无法解析域名

      C.  针对B1的附加说明

        找出这个问题。首先看报错内容(不传递绝对路径,即driver = webdriver.Chrome()):

        

        然后查看源码。可以发现。构造方法(def __init__)中。只有executable是没有默认值的。因此必须在使用webdriver.Chrome的时候传递路径以初始化该变量。否则报错。

        这样做的好处就是。在使用selenium的时候,多个浏览器再也不用分别配置环境变量了。把所有的驱动程序放在项目文件目录中。只需要在启动的时候设定指向位置即可

        当然。也可以改动源码。给这个变量一个default值。因此其他浏览器的使用就不多加说明了。

        最后。用driver来做声明变量其实并不是特别好的设计模式。如果selenium要做自动化的话,脚本必须封装为函数

        调用则使用类似unittest框架的东西来做,这样的话,内部变量基本上会使用如下写法

        # 初始化函数

        def setUp(self):

          self.browser = webdriver.Chorme(executable)

        # 执行脚本

        def test_case1(self):

          self.browser.get('http://www.baidu.com')

          ......

        这样做,就可以保证环境和数据配置。并且可以使用很多现有的方法。是比较推荐的写法。

        如果有进阶的兴趣。推荐去看《python web开发测试驱动方法》。对于初学者理解功能测试模式还是很有帮助的。

  • 相关阅读:
    Centos7下部署两套python版本并存
    运维监控系统之Open-Falcon
    Linux下如何查看系统启动时间和运行时间以及安装时间
    linux下使用FreeRDP 连接 Windows 远程桌面
    python3.6环境部署文档
    应用Fiddler对手机应用来抓包
    Highcharts 向下钻取饼图
    Highcharts 散点图
    IntelliJ IDEA2017 激活方法
    iterable 类型
  • 原文地址:https://www.cnblogs.com/ranyuu/p/7077573.html
Copyright © 2020-2023  润新知