selenium的安装与使用

193 阅读2分钟

在爬虫开发过程中,有的时候会遇到一些网站需要进行逆向采集的工作,但是受制于时间和开发难度的综合考虑,我们往往并不会对所有需要逆向采集的网站进行逆向工作,而是通过一些第三方工具操作浏览器的方式进行可视化采集,这里面的佼佼者就要属selenium了。
selenium的api我们放在后面进行讲解,本章主要介绍一下关于selenium的安装工作。
注: 本章并不会介绍所有浏览器的安装工作,主要介绍的是google的安装工作。

目录

1.1 浏览器版本检查

以本人的谷歌浏览器为例,点击右上角的三条横杠,如图所示:

selenium的安装与使用1.png 在下面的选项中点击设置选项

selenium的安装与使用2.png 点击关于Chrome,就可以看到谷歌浏览器的版本号了。

selenium的安装与使用3.png 本人的版本号是128.0.6613.138(64位),其中128为大版本号,我们在下载WebDriver寻找与大版本号一致的一般都可以成功启动谷歌浏览器。

1.2 下载`WebDriver`

以前常用的网址

现在使用发现,只能下载114版本之前的WebDrive了,由于存在较大的版本差异,导致现在在启动selenium时会出现版本不一致的报错。
现在使用的是:

googlechromelabs.github.io/chrome-for-…

目前这里能够找到谷歌浏览器的最新版的WebDrive。找到对应的版本,下载即可。

1.3 安装selenium

pip install selenium -i pypi.tuna.tsinghua.edu.cn/simple

1.4 默认启动谷歌浏览器测试

很多博客中,一般都是通过这样的方式进行测试的
import time

from selenium import webdriver
driver = webdriver.Chrome()
driver.get("http://www.baidu.com")
time.sleep(5)
driver.quit()

这样的代码更简洁,当我们没有指定WebDriver路径的时候,selenium模块会自动寻找对应的WebDrive,这样可能会出现以下异常:

  • 第一次启动浏览器速度很慢
  • 存在多个WebDriver的时候,可能会查找到错误的WebDrive,导致出现版本不匹配的情况

1.5 设置`WebDiver`路径启动谷歌浏览器

import time
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
def start(path=None):
    if path is None:
        driver = webdriver.Chrome()
    else:
        # 我的webdriver放在`C:/Users/12043/Desktop/DragonW/SpiderCase/`目录下
        if 'chromedriver.exe' not in path:
            service = Service(executable_path=f"{path}/chromedriver.exe")
        else:
            service = Service(executable_path=path)
        driver = webdriver.Chrome(service=service)
    return driver
dr = start(path="C:/Users/12043/Desktop/DragonW/SpiderCase/")
dr.get("http://www.baidu.com")
time.sleep(5)
dr.quit()