今天是持续写作的第 23 / 100 天。
如果你有想要交流的想法、技术,欢迎在评论区留言。
本文主要内容为 Selenium 安装,并且打通与 Python 之间的联系。
Selenium 安装
安装方式有两种,具体如下。其实不仅仅是 Selenium,任何 Python 中的第三方库都有两种安装方式。
通过 pip 工具安装
pip 是 Python 的包管理工具,新版本的 Python 安装之后会自带该工具,默认该工具所在的路径为 你电脑 Python的安装路径\Python37\Scripts
。
安装完毕之后在 CMD 命令窗口中,使用 pip 可以查阅到如下界面。如果没有出现,注意排查错误。常规情况下是环境变量没有配置。
安装 Selenium 之前可以通过下述命令确定本机是否已经安装过。
pip show selenium
由于我已经安装过,故展示的界面如下图所示。
如果没有安装,安装命令如下:
pip install selenium
在国内安装,经常受网速影响,导致通过 pip 安装失败,此时可以切换 pip 源,分为两种切换方式,永久和临时切换。
永久方式
- 修改 Windows 目录
C:\Users\Administrator\AppData\Roaming
下,找到 pip 文件夹,如果没有,自行创建一个。 - 进入 pip 文件夹,新建一个 pip.ini 的配置文件,注意文件后缀名
- 在 pip.ini 中粘贴下述内容,保存退出
[global]
# 超时设置,设置 10 秒
timeout = 10000
# 设定下载源,当前为豆瓣源
index-url = http://pypi.douban.com/simple/
# 指定域名
[install]
trusted-host= pypi.douban.com
如果运行命令发现如下错误提示。
Configuration file contains invalid cp936 characters in C:\Users\Administrator\AppData\Roaming\pip\pip.ini.
删掉注释即可。
pip 国内的一些镜像
- 阿里云 http://mirrors.aliyun.com/pypi/simple/
- 中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/
- 豆瓣(douban) http://pypi.douban.com/simple/
- 清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/
- 中国科学技术大学 http://pypi.mirrors.ustc.edu.cn/simple/
运行安装命令 pip install selenium
即可快速安装。
临时方式
使用 pip 命令可以临时指定 pip 源,命令如下:
pip install selenium -i https://pypi.mirrors.ustc.edu.cn/simple/
以上在安装的时候,命令中通过 -i 源地址
可以临时设置 pip 目标源。
pip 安装指定版本的 selenium
通过 pip install selenium == 3.141.0
可以安装对应版本号的 Selenium。
升级 selenium
升级到最新版本的 Selenium 使用的命令是 pip install --upgrade selenium
。升级之后旧版本会被覆盖。
卸载 Selenium
使用 pip uninstall selenium
卸载已经安装的 Selenium。
pip 常用命令如下
- pip download 软件包名(==版本号) 下载库的指定版本,如果没有设定版本号,下载最新版;
- pip list 列出当前环境下已经安装的第三方库;
- pip install 软件包名(==版本号) 在线安装指定版本的第三方库,如果没有设定版本号,安装最新版;
- pip install 软件包名.whl 通过 whl 离线包安装文件安装第三方库;
- pip install 软件包 1 软件包 2 软件包 3 通过名称依次安装第三方库,注意中间用空格分隔开;
- pip install -r list.txt 依次安装 list.txt 中指定的安装包;
- pip install --upgrade 软件包名 升级软件包;
- pip uninstall 软件包名(==版本号) 卸载指定版本的软件包。
通过官方离线包进行 Selenium 的安装
访问 Selenium 官方之后,下载离线文件,下载之后使用 python setup.py install
命令安装,此处不再细说,一般通过 pip 工具都可安装成功。
pip 安装包对应的说明地址为:https://pypi.org/project/selenium/
浏览器驱动
Selenium 安装完毕之后,还需要一个浏览器驱动,一般叫做 Webdriver,环境配置才算完毕。
不同的浏览器需要的驱动不同,针对于每个浏览器,Selenium 官方都给出了驱动下载地址。注意谷歌浏览器的打不开,参照最后一个地址进行下载。
- Chrome: https://sites.google.com/a/chromium.org/chromedriver/downloads
- Edge: https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/
- Firefox: https://github.com/mozilla/geckodriver/releases
- Safari: https://webkit.org/blog/6900/webdriver-support-in-safari-10/
以上都为官方地址,鉴于国内特殊原因,上述网站都可能不稳定,所以我们选择国内相关镜像。
https://npm.taobao.org/mirrors/
打开上述网址之后,所有的浏览器对应的驱动都可以随意下载,速度快,由于我电脑上一直使用的是 ChromeDriver
,所以后续课程都用火狐浏览器来完成,即 geckodriver
。
下载之前,先看好本地火狐浏览器的版本。例如我本地版本为 83.0 版本。
从 Selenium 官方提供的对应关系,找到 Webdriver 的版本。
https://firefox-source-docs.mozilla.org/testing/geckodriver/Support.html
在下载地址中找到对应的 0.28.0
版本。
进入下载 Windows 版本。
浏览器驱动目录
这一步非常重要,翻车必备,在电脑上任意磁盘创建一个 D:\webdriver
文件夹,将下载好的文件拷贝进去,如下图所示。
注意下述步骤:
计算机 —— 右键属性 —— 高级系统设置 —— 环境变量 —— 系统变量
找到 Path 值,将 D:\webdriver 路径添加进去
关于环境变量如何配置,自行检索
接下来任意创建一个 Python 文件,输入如下代码。
from selenium import webdriver
import time
open_driver = webdriver.Firefox()
# open_driver = webdriver.Chrome()
# open_driver = webdriver.PhantomJS()
open_driver.get('https://www.baidu.com')
time.sleep(5)
open_driver.close()
运行代码之后,如果没有任何错误,浏览器会打开百度首页,并且成功唤醒了火狐浏览器,恭喜自己一下吧,你成功了。
PhantomJS 是一个无界面浏览器,因此在运行的时候是不会有浏览器窗口显示的,后续课程中也会用到它。