# webdrivermanager_cn
**Repository Path**: Joker_JH/webdrivermanagercn
## Basic Information
- **Project Name**: webdrivermanager_cn
- **Description**: 基于国内源的WebDriver管理、下载工具
- **Primary Language**: Python
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 6
- **Forks**: 1
- **Created**: 2023-09-20
- **Last Updated**: 2025-12-03
## Categories & Tags
**Categories**: Uncategorized
**Tags**: Python, Selenium, chromedriver, pytest, Webdriver
## README
# WebDriverManager CN
[](https://www.python.org/downloads/)
[](https://pypi.org/project/webdrivermanager-cn/)
[](https://github.com/eternallyyf/webdrivermanagercn/blob/master/LICENSE)
[](https://pypi.org/project/webdrivermanager-cn/)
**基于国内镜像源的 WebDriver 自动管理工具**
[简体中文](README.md)
---
## 📖 简介
WebDriverManager CN 是一个基于 [阿里云镜像源](https://www.npmmirror.com/)
和 [华为云镜像源](https://mirrors.huaweicloud.com/) 的 WebDriver 自动下载管理工具,是 `webdriver_manager` 的国内镜像版本。
### ✨ 特性
- 🚀 **自动下载** - 自动匹配浏览器版本并下载对应的 WebDriver
- 🇨🇳 **国内加速** - 支持阿里云、华为云镜像源,下载速度快
- 💾 **智能缓存** - 自动缓存已下载的驱动,避免重复下载
- 🧹 **自动清理** - 可配置自动清理过期的驱动文件
- 🔄 **灵活切换** - 支持多镜像源切换,保证可用性
- 🎯 **跨平台** - 支持 Windows、MacOS、Linux
---
## 📦 安装
### 使用 pip 安装
```bash
pip install webdrivermanager_cn
```
### 升级到最新版本
```bash
pip install -U webdrivermanager_cn
```
---
## 🚀 快速开始
### ChromeDriver 使用示例
#### 方式一:使用阿里云镜像源(推荐)
```python
from webdrivermanager_cn import ChromeDriverManagerAliMirror
driver_path = ChromeDriverManagerAliMirror().install()
```
#### 方式二:使用华为云镜像源
```python
from webdrivermanager_cn import ChromeDriverManagerHuaweiMirror
driver_path = ChromeDriverManagerHuaweiMirror().install()
```
#### 方式三:手动切换镜像源
```python
from webdrivermanager_cn import ChromeDriverManager
driver = ChromeDriverManager()
driver.set_ali_mirror() # 切换为阿里源(默认)
# driver.set_huawei_mirror() # 切换为华为源
driver_path = driver.install()
```
### Geckodriver (Firefox) 使用示例
#### 使用阿里云镜像源
```python
from webdrivermanager_cn import GeckodriverManagerAliMirror
driver_path = GeckodriverManagerAliMirror().install()
```
#### 使用华为云镜像源
```python
from webdrivermanager_cn import GeckodriverManagerHuaweiMirror
driver_path = GeckodriverManagerHuaweiMirror().install()
```
#### 手动切换镜像源
```python
from webdrivermanager_cn import GeckodriverManager
driver = GeckodriverManager()
driver.set_ali_mirror() # 切换为阿里源(默认)
# driver.set_huawei_mirror() # 切换为华为源
driver_path = driver.install()
```
---
## 🛠️ 配置选项
### 日志配置
```python
import os
import logging
# 开启日志功能(默认关闭)
os.environ['WDM_LOG'] = 'true'
# 设置日志级别(默认为 INFO)
os.environ['WDM_LOG_LEVEL'] = str(logging.INFO)
```
### 自定义 Logger
```python
from webdrivermanager_cn.core.log_manager import set_logger
import logging
# 使用自定义 logger
my_logger = logging.getLogger('my_custom_logger')
set_logger(my_logger)
```
### 缓存管理
```python
import os
# 设置缓存清理时间(单位:天,默认为 5 天)
# 会自动删除 5 天前下载的旧版本 WebDriver
os.environ['WDM_CACHE_TIME'] = '5'
```
---
## 📊 支持的浏览器
| 浏览器 | Windows | MacOS | Linux |
|:-------:|:-------:|:-----:|:-----:|
| Chrome | ✅ | ✅ | ✅ |
| Firefox | ✅ | ✅ | ✅ |
> 💡 如需支持其他浏览器,欢迎提交 [Issue](https://gitee.com/Joker_JH/webdrivermanagercn/issues)
---
## 🤝 贡献
欢迎贡献代码、提出建议或报告问题!
1. Fork 本仓库
2. 创建您的特性分支 (`git checkout -b feature/AmazingFeature`)
3. 提交您的更改 (`git commit -m 'Add some AmazingFeature'`)
4. 推送到分支 (`git push origin feature/AmazingFeature`)
5. 提交 Pull Request
如果您发现了新的国内镜像源,欢迎提交 Issue 或 PR!
---
## 📄 许可证
本项目基于 [Apache-2.0](LICENSE) 协议开源。
---
## ⚠️ 免责声明
本项目仅供自动化测试工具使用,请勿用于非法用途。对于任何使用者的行为,本项目及作者不承担任何责任。
本项目依赖以下第三方服务,如有相关问题,会积极推进解决,但无法保证完全解决:
- [Gitee](https://gitee.com/)
- [阿里云开源镜像站](https://www.npmmirror.com/)
- [华为云开源镜像站](https://mirrors.huaweicloud.com/home)
---
## 📮 联系方式
- **作者**: 御风
- **Email**: eternallyyf@163.com
- **项目地址**: [Gitee](https://gitee.com/Joker_JH/webdrivermanagercn)
如果在使用过程中遇到任何问题,欢迎提交 [Issue](https://gitee.com/Joker_JH/webdrivermanagercn/issues)!
---
## 💡 开发背景
作者是一名测试开发工程师,在自动化测试工作中使用 `webdriver_manager` 解决了 Chrome 频繁更新导致 ChromeDriver 无法使用的问题。
然而,2023年中期,ChromeDriver 官方修改了发布方式,导致国内大部分镜像源无法正确同步新版本(停留在 114
版本)。虽然阿里云镜像已经完成了新版同步,但原有的下载方式已经无法适配。
因此,作者研究源码后决定重新开发一个基于国内镜像源的 WebDriver 管理工具,帮助无法访问 GitHub 的团队和个人继续使用自动化测试。
---
**如果这个项目对您有帮助,请给一个 ⭐️ Star!**