默认下载2.35版本,放置到/usr/local/bin

#!/usr/bin/env bash
# -------------------------------------------------------
# TITLE
# install_chromedriver_mac.sh
# DESCRIPTION
# 用于自动下载指定版本的驱动
# AUTHOR
# bixiaopeng <wirelessqa@163.com>
# DEPENDENCIES
# Operating System: Works on mac OS
# Shell: bash preferred.
# HOWTO
# bash install_chromedriver_mac.sh <版本号>
# bash install_chromedriver_mac.sh # 会下载默认的2.35版本
#
# -------------------------------------------------------
# CHANGELOG
# 16/9/21 上午10:56 bixiaopeng initial version created. CHROME_DRIVER_VERSION=2.35 version=$1 # 输入的版本号 # 判断是否为空
if [[ -z ${version} ]];then echo "- Version param is empty. set default version=${CHROME_DRIVER_VERSION}" && version=${CHROME_DRIVER_VERSION};fi echo "- Download version ${version}" # chrome driver 驱动文件下载固定 URL ,不要攺动哦。
CHROME_DRIVER_BASE_URL="http://chromedriver.storage.googleapis.com/index.html?path=${CHROME_DRIVER_VERSION}/"
CHROME_DRIVER_URL_MAC=${CHROME_DRIVER_BASE_URL}"chromedriver_mac64.zip" # mac 版的压缩包名
ZIP_FILE_NAME="chromedriver_mac64.zip"
# 解压后的名字
CMD_FILE_NAME="chromedriver" function download_chromedriver()
{
echo - Download ${ZIP_FILE_NAME} from ${CHROME_DRIVER_URL_MAC}
curl -O -X GET -H "X-DevTools-Emulate-Network-Conditions-Client-Id: 31f262af-532f-47ed-89f6-6bae5b7b4e3f" -H "Upgrade-Insecure-Requests: 1" -H "User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36" -H "X-Client-Data: CJe2yQEIpLbJAQjBtskBCPKcygE=" -H "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8" -H "Referer: http://chromedriver.storage.googleapis.com/index.html?path=${CHROME_DRIVER_VERSION}/" -H "Accept-Encoding: gzip, deflate, sdch" -H "Accept-Language: zh-CN,zh;q=0.8,en;q=0.6" -H "Cache-Control: no-cache" -H "Postman-Token: 7abaa68b-1cbe-5629-a8de-5efb85d80fe4" "http://chromedriver.storage.googleapis.com/${CHROME_DRIVER_VERSION}/${ZIP_FILE_NAME}" if [[ ! -f ${ZIP_FILE_NAME} ]]
then
echo ">> Fail download."
exit 0
else
echo ">> Success download."
fi
} function unzip_file()
{
unzip ${ZIP_FILE_NAME}
if [[ -f ${CMD_FILE_NAME} ]];then echo "- Unzip success.";else echo "- Unzip fail." && exit 0;fi
} function init_env()
{
rm ${ZIP_FILE_NAME}
rm ${CMD_FILE_NAME}
} echo "第1步: 初始化环境,然后下载${version}版本的压缩文件"
init_env
download_chromedriver echo "第2步: 解压"
unzip_file echo "第3步: 把命令文件复制到指定目录"
cp ${CMD_FILE_NAME} /usr/local/bin echo "第4步: 查看chrome driver 版本"
chromedriver -v

  

mac上安装chromedriver的更多相关文章

  1. 在Mac上安装IntelliJ IDEA

    这篇文章旨在介绍如何在Mac系统上安装IntelliJ IDEA,至于IntelliJ IDEA的介绍和使用方法,大家另行查阅,本篇的文章不再详细阐述. 简短解说,IntelliJ IDEA是可以用来 ...

  2. Mac上安装brew

    用过ubuntu系统的都知道,上面有一个命令apt-get 很方便可以快速的安装很多软件 特别lamp环境 都是一键安装. 在mac上也有类似的命令 brew brew用法可以访问官网地址  http ...

  3. mac 上安装服务,查看服务,重启和关闭

    首先了解下的Mac的 homebrew ,官网:https://brew.sh/index_zh-cn.html 简单的说: Homebrew 能干什么? 答:使用 Homebrew 安装 Apple ...

  4. Mac上安装brew 包管理工具

    Mac 上的包管理工具对于开发者来说是一件非常方便的工具,能够有效的对包进行管理. 所以这篇博客就来简单的讲一下brew 的安装和一些基础命令. brew 全称叫做Homebrew . 1. 首先来说 ...

  5. Mac上安装Charles进行抓包全流程设置

    安装 -- 官网下载最新版的Charles版本,按照提示安装即可 破解 -- https://blog.csdn.net/qq_25821067/article/details/79848589. M ...

  6. 【mac上安装&配置&使用git】

    转自:https://www.jianshu.com/p/7edb6b838a2e 目录 安装git 创建ssh key.配置git 提交本地项目到GitHub 一.安装Git MAC 上安装Git主 ...

  7. Mac上安装PHP、Apache、MySQL

    Mac自带php5.6版本,要升级到php7.3 步骤如下 1,brew 安装php ,如果没有安装,访问https://brew.sh/index_zh-cn安装在终端输入以下内容,不用指定安装ph ...

  8. Mac上安装第三方应用显示包资源破坏解决办法

    Mac上安装第三方应用显示包资源破坏解决办法 步骤1:Spotlight搜索(快捷键:command+空格或右上角搜索的符号):搜索 “终端”步骤2:直接复制粘贴 sudo spctl --maste ...

  9. 002-docker安装-mac上安装docker,17.06在CentOS7 64位机器上安装

    一.mac上安装docker 1.下载 通过这个链接下载:https://download.docker.com/mac/stable/Docker.dmg 2.安装 将 Moby 的鲸鱼图标拖拽到  ...

随机推荐

  1. 使用Timer组件实现人物动画效果

    实现效果: 知识运用: Graphics类的DrawImage方法 //在指定位置 按原始大小绘制指定的Image对象 public void DrawImage(Image image,Point ...

  2. The expected type was 'System.Int64' but the actual value was null.”

    System.InvalidOperationException:“An exception occurred while reading a database value for property ...

  3. ES6学习总结 (二)

    一:ES6为函数做了哪些扩展 参数的默认值 传统写法: function person(n,a){ var name =n || "zhangsan"; var age = a | ...

  4. 初涉网络流[EK&dinic]

    主要还是板子 Edmonds-Karp 从S开始bfs,直到找到一条到达T的路径后将该路径增广,并重复这一过程. 在处理过程中,为了应对“找到的一条路径把其他路径堵塞”的情况,采用了建反向弧的方式来实 ...

  5. 到底该如何理解DevOps这个词

    炒了8年的概念,到底该如何理解DevOps这个词? 转载本文需注明出处:EAII企业架构创新研究院,违者必究.如需加入微信群参与微课堂.架构设计与讨论直播请直接回复公众号:“EAII企业架构创新研究院 ...

  6. Docker 自动运行Nginx容器

    Dockerfile文件如下: FROM ubuntu #基础镜像 RUN apt-get update #更新apt RUN apt-get -y install nginx #安装nginx VO ...

  7. 标准C++(3)重载

    一.函数的重载 c++中同一作用域下能够定义同名的函数(这就叫重载),但必须满足如下要求: 1.函数的参数列表必须不同,可以使参数数量不同,也可以使参数的类型不同,甚至是参数的顺序不同. 2.函数的返 ...

  8. stm32启动地址

    理论上,CM3中规定上电后CPU是从0地址开始执行,但是这里中断向量表却被烧写在0x0800 0000地址里(Flash memory启动方式),那启动时不就找不到中断向量表了?既然CM3定下的规矩是 ...

  9. BFS:UVa1590-IP Networks (子网掩码相关知识)

    IP Networks Alex is administrator of IP networks. His clients have a bunch of individual IP addresse ...

  10. C语言的文件处理

    所谓“文件”一般指存储在外部介质上数据的集合.根据数据的组织形式,可分为ASCII文件和二进制文件.ASCII文件,又称为文本文件,它的每一个字节存放一个ASCII代码,代表一个字符.二进制文件是把内 ...