要做web自动化,第一件事情就是搭建自动化测试环境,那就没法避免的要用到selenium了。

那在搭建环境和使用过程中经常会遇到以下几类问题:

1、引入selenium包失败:

出现这种错误,一般分为两种情况:

1、根本没有安装selenium库;

2、安装了selenium库,可是在导入的时候,仍然提示selenium库不存在。

解决方法:

针对第1种,那就是麻溜的去安装selenium库。pip命令安装最好!!命令:pip install selenium

针对2:

1)确认你安装的selenium第三方库安装在哪个python目录中?并确认你的selenium安装成功;

如何确认?安装的时候,会直接输出你的selenium安装到了哪里。注意观察哟。

2)确认你的代码使用的python是哪个,安装目录在哪里?是否是1)中对应的python目录。

以pycharm编辑器为例:

在pycharm当中, 每一个project都会有一个External Libraries栏。如下图:

会直接显示你当前project所用的python版本以及安装目录;

打开其下的site-packages目录,会显示所有安装的第三方库。如果能够找到selenium文件夹,则说是在这个python版本中是安装了selenium的

注意注意:pycharm现在有专业版和社区版。很多新手朋友们去用破解版的专业版,结果入了坑也不知道。

因为专业版是默认使用的 - 它给你创建的虚拟环境的。你需要手动配置成使用系统python环境 。所以高度建议,新手们使用社区版就好。

如果以上两点,都确认无误,没错,就是安装在我当前正在用的python当中。那恭喜你,可以正常引入selenium的webdriver包了。

2、调用selenium库方法失败:Module object is not callable

这个问题就好解决多啦。。。

就是使用webdriver的功能时,把功能名字给错了。你一写错,人家webdriver库根本就找不到这个名字对应的功能。自然就报了上面的错误 。

所以,正确的方式是:

browser = webdriver.Chrome()

3、浏览器版本与驱动版本不匹配的报错: call function result missing 'value'

这个问题就要从selenium环境安装方面说起了。

我们功能测试测web系统时,就是通过人工去在浏览器页面中各种点点点。但是自动化,咱们得换个实现方式了。

是通过代码来自动的去浏览器页面中各种点点点。即 python+selenium代码 与 浏览器  进行交互。

而且浏览器这个物种有多种类型,谷歌、ie、firefox、safaria......

两个完全不同的物种如何交流??

翻译!!中间件!! 没错,就是它了。。。为了解决这个问题,浏览器厂商提供各种的驱动软件。于是就有了chromedrver,IEdriver,geckodriver......

驱动软件可以跟我们的python+selenium自动化代码交互,也可以跟浏览器进行交互。把自动化代码要做的事情,通过驱动软件去驱动浏览器操作实现。

但素,软件从生出开始,就需要不断的长大、进化,更好的为人民服务。

所以浏览器会不断的更新,那么与其匹配的驱动软件也会同样的更新。

所以就会有:不同的驱动版本,支持不同的浏览器版本。

so,这样的报错解决方法就是:去下载匹配你当前浏览器版本的驱动。

放在你所用python版本的安装目录下面。

python+selenium初学者常见问题处理的更多相关文章

  1. python selenium 常见问题列表

    python selenium webdriver 常见问题FAQ 另一个FAQ: https://code.google.com/p/selenium/wiki/FrequentlyAskedQue ...

  2. Python+Selenium基础篇之1-环境搭建

    Python + Selenium 自动化环境搭建过程 1. 所需组建 1.1 Selenium for python 1.2 Python 1.3 Notepad++ 作为刚初学者,这里不建议使用P ...

  3. 使用Python + Selenium打造浏览器爬虫

    Selenium 是一款强大的基于浏览器的开源自动化测试工具,最初由 Jason Huggins 于 2004 年在 ThoughtWorks 发起,它提供了一套简单易用的 API,模拟浏览器的各种操 ...

  4. python+selenium的环境配置

    以前写过关于python和selenium加myeclipse的环境配置,但是myeclipse启动时过于费时,虽然myeclipse有很好的提示功能,但是作为初学者,我还是直接用python的idl ...

  5. python+selenium 浏览器的问题

    以前用selenium调用firefox是不需要驱动的,最近安装了python3.52+最新的firefox 发现调不起来了 搜索以后发现Firefox 47+需要搞个firefox的驱动 gecko ...

  6. 一次完整的自动化登录测试-基于python+selenium进行cnblog的自动化登录测试

    Web登录测试是很常见的测试!手动测试大家再熟悉不过了,那如何进行自动化登录测试呢!本文作者就用python+selenium结合unittest单元测试框架来进行一次简单但比较完整的cnblog自动 ...

  7. Python + Selenium 实现登录Office 365

    最近捡起之前用的Python + Selenium实现工作中需要的登录Office 365功能.(吐槽:国内网络真是卡,登录Office 365实属不易.另外Selenium这样的网站都要墙,无法理解 ...

  8. python+selenium+Robot

    准备工作: 1.下载python2.7 http://python.org/getit/ 2.下载下载setuptools [python 的基础包工具] 可以帮助我们轻松的下载,构建,安装,升级,卸 ...

  9. python+selenium运行报错UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-1: ordinal not in range(128)

    使用python+selenium运行自动化脚本时,打印某一段文字出现UnicodeEncodeError: 'ascii' codec can't encode characters in posi ...

随机推荐

  1. Java 基础--小结

    Java  基础--小结 java基础 Java源程序(.java文件)——>java字节码文件(.class文件)——>由解释执行器(java.exe)将字节码文件加载到java虚拟机( ...

  2. access数据库表导入到oracle

    1.本机安装access数据库 25M左右2.创建ODBC数据源,要选择oracle C:\Windows\SysWOW64\odbcad32.exe 3.打开要导入的 .mdb文件 右键表--> ...

  3. 【刷题】HDU 6183 Color it

    Problem Description Do you like painting? Little D doesn't like painting, especially messy color pai ...

  4. HBase介绍及简易安装

    HBase简介 HBase是Apache Hadoop的数据库,能够对大型数据提供随机.实时的读写访问,是Google的BigTable的开源实现.HBase的目标是存储并处理大型的数据,更具体地说仅 ...

  5. PKUWC Slay The Spire

    题面链接 LOJ sol 好神啊.果然\(dp\)还是做少了,纪录一下现在的思维吧\(QAQ\). 我们首先可以发现期望是骗人的,要不然他乘的是什么xjb玩意. 其实就是要求所有方案的最优方案和. 因 ...

  6. loj2540 「PKUWC2018」随机算法 【状压dp】

    题目链接 loj2540 题解 有一个朴素三进制状压\(dp\),考虑当前点三种状态:没考虑过,被选入集合,被排除 就有了\(O(n3^{n})\)的转移 但这样不优,我们考虑优化状态 设\(f[i] ...

  7. Android Studio 换主题(Material Theme..)

    1.去如下网址下载自己喜欢的主题文件xx.jar http://color-themes.com/?view=index 2. 导入方式 下载主题—xxx.jar 注意:如果我们下载下来的jar名字如 ...

  8. 解题:CF1009 Dominant Indices

    题面 长链剖分模板题 只能按深度统计,同时比DSU on tree难理解一些,但是复杂度少个log 对每个点抓出向下延伸最长的儿子叫做长儿子.在合并时用指针继承信息,对于长儿子O(1)继承,其他儿子暴 ...

  9. bashttpd使用手册

    http://note.youdao.com/noteshare?id=15775dca9fcdc7326e80158082572ed5

  10. 序列内第k小查询(线段树)

    最近请教了一下大佬怎么求序列内第k大查询,自己又捣鼓了一下,虽然还没有懂得区间第k大查询,不过姑且做一个记录先吧 因为每个元素大小可能很大而元素之间不连续,所以我们先离散化处理一下,程序中的ori[ ...