Selenium 控制浏览器
Table of Contents
1 前言
Selenium 是一个用于 Web 应用程序测试的工具。 Selenium 测试直接运行在浏览器中, 就像真正的用户在操作一样。支持的浏览器包括 IE(7, 8, 9, 10, 11),Firefox, Safari,Chrome,Opera 等。 使用 python 爬虫调用 selenium 来模拟正常用户访问浏 览器
2 安装与配置
2.1 Chrome Driver
安装 Chrome Driver, 该工具供 Selenium 使用 Chrome. 下载前先查看本地环境的 Chrome 版本, 然后去上面的 taobao mirror 中下载对应的 ChromeDriver 版本.
ChromeDriver | Chrome |
---|---|
v2.37 | v64-66 |
v2.36 | v63-65 |
v2.35 | v62-64 |
v2.34 | v61-63 |
v2.33 | v60-62 |
v2.32 | v59-61 |
v2.31 | v58-60 |
v2.30 | v58-60 |
v2.29 | v56-58 |
v2.28 | v55-57 |
v2.27 | v54-56 |
v2.26 | v53-55 |
v2.25 | v53-55 |
v2.24 | v52-54 |
v2.23 | v51-53 |
将下载的 ChromeDriver 进行解压,将解压后的文件移动到 /usr/loacl/bin
目录中.
$ chromedriver -v ChromeDriver 81.0.4044.20 (f006328e39a9769596eb506c8841c3004b24e747-refs/branch-heads/4044@{#244})
2.2 Firefox Driver
Firefox Driver 下载方式类似
$ ./geckodriver --version geckodriver 0.26.0 (e9783a644016 2019-10-10 13:38 +0000) The source code of this program is available from testing/geckodriver in https://hg.mozilla.org/mozilla-central. This program is subject to the terms of the Mozilla Public License 2.0. You can obtain a copy of the license at https://mozilla.org/MPL/2.0/.
2.3 Selenium
pip3 install selenium
3 使用
文档详细见 doc
3.1 Chrome 有界面运行
#!/usr/bin/env python3 from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.common.keys import Keys from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support.expected_conditions import presence_of_element_located #This example requires Selenium WebDriver 3.13 or newer with webdriver.Chrome() as driver: wait = WebDriverWait(driver, 10) driver.get("http://www.baidu.com") driver.quit()