1、在 appium 官网上下载安装后,下载的是1.7.1的版本,安装之后是1.9.1最新版本。

2、appium安装之后,会发现涉及到 浏览器相关的业务时(我使用的是chrome)会提示 “No Chromedriver found that can automate Chrome '62.0.3202'”。

 # -*- coding:utf-8 -*-
'''
Created on Sep 30, 2018 @author: SaShuangYiBing Comment:
'''
from appium import webdriver
desired_caps = {}
desired_caps['platformName'] ='Android'
desired_caps['platformVersion'] ='7.0'
desired_caps['deviceName'] ='DIYTHYTCCQBIV47D'
desired_caps['browserName'] = 'Chrome' desired_caps["unicodeKeyboard"] ="True"
desired_caps["resetKeyboard"] ="True"
driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps) print(driver.current_package)
print(driver.current_activity) #输出错误如下:
Traceback (most recent call last):
File "D:\WorkSpace3\EXAMPLE\Appiu_ex\qwsa.py", line 18, in <module>
driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)
File "C:\Program Files\Python36\lib\site-packages\appium\webdriver\webdriver.py", line 97, in __init__
super(WebDriver, self).__init__(command_executor, desired_capabilities, browser_profile, proxy, keep_alive)
File "C:\Program Files\Python36\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 157, in __init__
self.start_session(capabilities, browser_profile)
File "C:\Program Files\Python36\lib\site-packages\appium\webdriver\webdriver.py", line 136, in start_session
response = self.execute(RemoteCommand.NEW_SESSION, parameters)
File "C:\Program Files\Python36\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 321, in execute
self.error_handler.check_response(response)
File "C:\Program Files\Python36\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: An unknown server-side error occurred while processing the command. Original error: No Chromedriver found that can automate Chrome '62.0.3202'. See https://github.com/appium/appium/blob/master/docs/en/writing-running-appium/web/chromedriver.md for more details.

3、按照错误提示提供的 github 链接去查看如何安装这个driver,发现使用 npm 命令进行安装。

4、打开命令行窗口,输入npm 提示命令无效,接下来就得要先安装某个软件才能支持这个命令,网上上查找一翻之后是要安装 Node.js,之前老的appium版本(v1.4左右)是会自带这个node.js的,新版本目前未发现。

5、前往 Node.js 官网下载跟系统匹配的版本进行安装,安装时一路点 Next 直到 Finish 即可。

6、重新打开命令窗口,输入 npm -v 会提示出版本号,如果未显示出版本号则可能是安装出问题,请将上面步骤重新跑一遍。

7、然后查找浏览器的版本号,找到对应的chrmoedriver 版本号,匹配关系如下:

The following is a list of Chromedriver versions and their corresponding minimum Chrome version that is automatable:

Version Minimum Chrome Version Link to Chromedriver
2.42 68.0.3440.0 v2.42 (link)
2.41 67.0.3360.0 v2.41 (link)
2.40 66.0.3359.0 v2.40 (link)
2.39 66.0.3359.0 v2.39 (link)
2.38 65.0.3325.0 v2.38 (link)
2.37 64.0.3282.0 v2.37 (link)
2.36 63.0.3239.0 v2.36 (link)
2.35 62.0.3202.0 v2.35 (link)
2.34 61.0.3163.0 v2.34 (link)
2.33 60.0.3112.0 v2.33 (link)
2.32 59.0.3071.0 v2.32 (link)
2.31 58.0.3029.0 v2.31 (link)
2.30 58.0.3029.0 v2.30 (link)
2.29 57.0.2987.0 v2.29 (link)
2.28 55.0.2883.0 v2.28 (link)
2.27 54.0.2840.0 v2.27 (link)
2.26 53.0.2785.0 v2.26 (link)
2.25 53.0.2785.0 v2.25 (link)
2.24 52.0.2743.0 v2.24 (link)
2.23 51.0.2704.0 v2.23 (link)
2.22 49.0.2623.0 v2.22 (link)
2.21 46.0.2490.0 v2.21 (link)
2.20 43.0.2357.0 v2.20 (link)
2.19 43.0.2357.0 v2.19 (link)
2.18 43.0.2357.0 v2.18 (link)
2.17 42.0.2311.0 v2.17 (link)
2.16 42.0.2311.0 v2.16 (link)
2.15 40.0.2214.0 v2.15 (link)
2.14 39.0.2171.0 v2.14 (link)
2.13 38.0.2125.0 v2.13 (link)
2.12 36.0.1985.0 v2.12 (link)
2.11 36.0.1985.0 v2.11 (link)
2.10 33.0.1751.0 v2.10 (link)
2.9 31.0.1650.59 v2.9 (link)
2.8 30.0.1573.2 v2.8 (link)
2.7 30.0.1573.2 v2.7 (link)
2.6 29.0.1545.0 v2.6 (link)
2.5 29.0.1545.0 v2.5 (link)
2.4 29.0.1545.0 v2.4 (link)
2.3 28.0.1500.0 v2.3 (link)
2.2 27.0.1453.0 v2.2 (link)
2.1 27.0.1453.0 v2.1 (link)
2.0 27.0.1453.0 v2.0 (link)

上述chromedriver版本匹配及下载链接为:点击跳转

8、在命令行窗口输入 npm install appium --chromedriver_version="2.35" ,我的浏览器版本是 62.0.3202.84 对应匹配的 chromedriver为 2.35

9、待安装完成即可

Appium1.9 之 Chromedriver安装方式的更多相关文章

  1. Hive的三种安装方式(内嵌模式,本地模式远程模式)

    一.安装模式介绍:     Hive官网上介绍了Hive的3种安装方式,分别对应不同的应用场景.     1.内嵌模式(元数据保村在内嵌的derby种,允许一个会话链接,尝试多个会话链接时会报错)   ...

  2. 不经过 App store 的安装方式(转)

    所有安装到真机(非越狱)的应用(可以是 .app ,也可以是 .ipa ,只要编译时选的是编译成 Arm 的就好..app 转 .ipa 只需要一条命令) 都必须经过证书签名.证书主要有三大种: 企业 ...

  3. Eclipse插件安装方式及使用说明

    拷贝安装方式 1.通过ECLIPSE_HOME\plugins安装 在eclipse的主目录ECLIPSE_HOME, 比如在我的机器上安装的目录是:ECLIPSE_HOME有一个plugins的目录 ...

  4. 关于MYSQL数据库安装方式及相关设置简要说明

    网上关于MYSQL的教程非常多,但都不是最新的,我这里只是针对最新版本的MY SQL 的安装与设置进行一个简要的说明,大部份操作都相同. 以下是按照WINDOWS 64位操作系统+MY SQL 5.6 ...

  5. Python模块常用的几种安装方式

    Python模块安装方法 一.方法1: 单文件模块直接把文件拷贝到 $python_dir/Lib 二.方法2: 多文件模块,带setup.py 下载模块包,进行解压,进入模块文件夹,执行:pytho ...

  6. windows docker安装方式的比较小结

    稍微小结一下使用InstallDocker 和dockertoolbox的两种方式安装的docker(名称说明可能不妥,仅代表安装方式) InstallDocker  使用的是Microsoft Hy ...

  7. caffe 安装在win 7 vs2015 无gpu的安装方式-是无法安装 的

    网上多数是vs2012或者vs2013上安装方式,带NA-显卡的需要安装CUDA7.5,安装cuDNN4,cuDNN. 一 :下载caffe源码(microsoft版) 下载地址:https://gi ...

  8. 【转】android应用程序的安装方式与原理

    四种安装方式: 1.系统应用安装――开机时完成,没有安装界面 2.网络下载应用安装――通过market应用完成,没有安装界面 3.ADB工具安装――没有安装界面. 4.第三方应用安装――通过SD卡里的 ...

  9. centos7 使用 omnibus包安装方式,安装 gitlab7.4

    centos7 使用 omnibus包安装方式,安装 gitlab7.4 1: gitlab是一个开源的软件,类似于github.com那样的git代码管理仓库: 官网 https://about.g ...

随机推荐

  1. 解决 "Script Error" 的另类思路

    本文由小芭乐发表 前端的同学如果用 window.onerror 事件做过监控,应该知道,跨域的脚本会给出 "Script Error." 提示,拿不到具体的错误信息和堆栈信息. ...

  2. 自动化运维(1)之二进制部署MySQL5.7

    二进制部署MySQL5.7 这个文档用于基础解释,后面通过ansible的自动化对MySQL单实例进行安装部署. 1.解压文件 # tar zxvf mysql-5.7.22-linux-glibc2 ...

  3. js------数组随机排序和去重

    let arr = ['g', 'b', 'c', 'd', 'e', 'a', 'g', 'b', 'c']; // 数组随机排序(原数组被修改)Array.prototype.randomSort ...

  4. Apollo 2 如何支持 @Value 注解自动更新

    前言 Apollo 在 v0.10.0 版本后,支持自动更新.v0.10.0之前的版本在配置变化后不会重新注入,需要重启才会更新. 也就是说,如果一个属性加入了 @Value 注解,并且这个配置在配置 ...

  5. swift 基础小结02 -- VFL约束、属性的get和set方法、懒加载、方法替换

    一.属性的get和set方法          1.自定义属性的set和get方法          private(set) var _image:UIImage?     //自定义属性get,s ...

  6. 具体CAS操作实现(无锁算法)

    具体CAS操作 上一篇讲述了CAS机制,这篇讲解CAS具体操作. 什么是悲观锁.乐观锁?在java语言里,总有一些名词看语义跟本不明白是啥玩意儿,也就总有部分面试官拿着这样的词来忽悠面试者,以此来找优 ...

  7. 【Java深入研究】4、fail-fast机制

    在JDK的Collection中我们时常会看到类似于这样的话: 例如,ArrayList: 注意,迭代器的快速失败行为无法得到保证,因为一般来说,不可能对是否出现不同步并发修改做出任何硬性保证.快速失 ...

  8. 【Quartz】1、Quartz使用说明

    简介 Quartz 是个开源的作业调度框架,为在 Java 应用程序中进行作业调度提供了简单却强大的机制.Quartz 允许开发人员根据时间间隔(或天)来调度作业.它实现了作业和触发器的多对多关系,还 ...

  9. module.exports和exports.md

    推荐写法 具体解释可以往后看. 'use strict' let app = { // 注册全局对象 ... } ... // 封装工具箱 exports = module.exports = app ...

  10. MEF 插件式开发之 小试牛刀

    MEF 简介 Managed Extensibility Framework 即 MEF 是用于创建轻量.可扩展应用程序的库. 它让应用程序开发人员得以发现和使用扩展且无需配置. 它还让扩展开发人员得 ...