安装
安装客户端
不同的编程语言选择不同的Selenium客户端库。
对于Python来说,Selenium的安装非常简单,使用pip命令即可。
打开CMD命令行,运行如下命令
pip install selenium
如果安装失败,可能是网络问题,可以指定国内的镜像源,这里指定豆瓣
pip install selenium -i https://pypi.douban.com/simple/
安装浏览器和驱动
浏览器驱动和浏览器是对应的。不同的浏览器需要选择不同的浏览器驱动。
目前主流的浏览器中,谷歌Chrome浏览器对Selenium自动化的支持更加成熟一些。
推荐大家使用Chrome浏览器。
确保Chrome浏览器安装好以后,请大家打开下面的链接,访问Chrome浏览器的驱动下载页面
注意浏览器驱动必须和浏览器版本匹配,只要大版本号对应就行。
简单实例
下面代码,可以自动化的打开 Chrome 浏览器,并且自动化的打开百度网站,大家可以运行一下看看。
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
# 创建WebDriver 对象,指明使用chrome浏览器驱动
wd = webdriver.Chrome(service=Service(r'd:\tools\chromedriver.exe'))
# 调用WebDriver 对象的get方法,可以让浏览器打开指定网址
wd.get('https://www.baidu.com')
其中,下面这行代码就会运行浏览器驱动,并且运行Chorme浏览器
wd = webdriver.Chrome(r'd:\tools\chromedriver.exe')
注意!!等号右边返回的是 WebDriver 类型的对象,我们可以通过这个对象来操控浏览器,比如打开网址、选择界面元素。
而下面这行代码就是使用 WebDriver 的get方法打开网址
wd.get('https://www.baidu.com')
省略浏览器驱动路径
前面,我们创建WebDriver对象时,需要指定浏览器驱动的路径,比如
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
这样写有几个问题:
一是,比较麻烦,每次写自动化代码都要指定路径。
二是,如果你的代码给别人运行,他的电脑上存放驱动的位置不一定和你一样,得修改脚本。
有什么好办法呢?
我们可以把浏览器驱动 所在目录 加入环境变量 Path ,写代码时,就可以无需指定浏览器驱动路径了,像下面
wd = webdriver.Chrome()
因此,Selenium会自动在环境变量Path指定的那些目录里查找名为chromedriver.exe 的文件。
一定要注意的是, 加入环境变量Path的,
不是浏览器驱动全路径,比如 d:\tools\chromedriver.exe
而是浏览器驱动所在目录,比如 d:\tools
常见问题
关闭 chromedriver日志
缺省情况下 chromedriver被启动后,会在屏幕上输出不少日志信息
可以这样关闭
from selenium import webdriver
# 加上参数,禁止 chromedriver 日志写屏
options = webdriver.ChromeOptions()
options.add_experimental_option(
'excludeSwitches', ['enable-logging'])
wd = webdriver.Chrome(options=options # 这里指定 options 参数
)