Python+Selenium 安装及环境配置(macOS 向)
1. 安装 Python
- 确认 macOS 上已安装 Python3。如果没有安装,可以通过以下方式:
• Python 官网:下载链接
• Homebrew:使用以下命令安装:
brew install python3
- 验证安装是否成功:
python3 --version
2. 安装 Selenium
- 使用 pip 安装 Selenium 库:
pip install selenium
如果系统中有多个版本的 Python,建议使用 pip3:
pip3 install selenium
- 验证安装是否成功:
• 使用以下命令打印 Selenium 版本:
python3 -c "import selenium; print(selenium.__version__)"
示例输出:
• 或查看安装详情:
pip show selenium
示例输出:
3. 浏览器驱动(WebDriver)配置
3.1 自动管理 WebDriver
从 Selenium 4.6.0 开始,内置了 Driver Manager 功能,可以自动下载和管理 WebDriver。
不同系统下,WebDriver 的缓存路径如下:
操作系统 | 默认 WebDriver 缓存位置 |
---|---|
Windows | %LOCALAPPDATA%\selenium\webdriver |
macOS | ~/Library/Application Support/selenium/webdriver |
Linux | ~/.cache/selenium/webdriver |
3.2 手动安装 WebDriver(适用特定需求)
在需要更精细控制测试环境或网络受限时,手动安装 WebDriver 是一个可选方案。
1. 为什么手动配置 WebDriver?
• 灵活性:明确指定 WebDriver 版本以适配特定浏览器版本。
• 稳定性:确保开发与测试环境一致。
• 独立性:避免自动下载失败的问题,适合 CI/CD 环境。
2. 安装步骤
Chrome 浏览器
- 查看 Chrome 浏览器版本:
打开 chrome://settings/help 查看版本号。
- 下载 ChromeDriver:
- 安装 ChromeDriver:
• 将 chromedriver 移动到系统路径(如 /usr/local/bin/):
mv chromedriver /usr/local/bin/
• 验证安装:
chromedriver --version
Firefox 浏览器
- 查看 Firefox 浏览器版本:
打开 about:support 查看版本号。
- 下载 GeckoDriver:
- 安装 GeckoDriver:
• 将 geckodriver 移动到系统路径:
mv geckodriver /usr/local/bin/
• 验证安装:
geckodriver --version
3.3 注意事项
- 版本兼容性:
• WebDriver 的版本需与浏览器的大版本号一致:
• Chrome 117.x 需搭配 ChromeDriver 117.x。
• Firefox 浏览器同样适用上述规则。
• 小版本号可有差异,但建议尽量保持一致。
- 驱动路径:
• WebDriver 可以放置在系统路径中,也可在代码中显式指定路径:
driver = webdriver.Chrome(executable_path='/path/to/chromedriver')
4. 使用 webdriver_manager 自动管理 WebDriver
webdriver_manager 是一个开源库,能自动下载和管理 WebDriver,适合简化自动化测试环境配置。
4.1 安装 webdriver_manager
pip install webdriver-manager
4.2 示例代码
Chrome 示例
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
# 自动下载并启动 ChromeDriver
driver = webdriver.Chrome(ChromeDriverManager().install())
Firefox 示例
from selenium import webdriver
from webdriver_manager.firefox import GeckoDriverManager
# 自动下载并启动 GeckoDriver
driver = webdriver.Firefox(executable_path=GeckoDriverManager().install())
4.3 优点
• 自动检测本地浏览器版本,下载对应 WebDriver。
• 避免手动管理驱动文件和路径。
• 提高测试效率,减少配置复杂度和错误率。