针对 Python 3.7.0,以下是 Selenium 版本的兼容性建议和安装步骤

1. Selenium 版本推荐

  • 最高兼容版本

    Selenium 4.11.2(官方明确支持 Python 3.7+,但需注意部分新功能可能受限)。

  • 稳定兼容版本

    Selenium 3.141.0(经典版本,完全兼容 Python 3.7,适合保守使用)。

Python 版本 推荐 Selenium 版本 备注
3.7.0 4.11.2 需确保其他依赖(如 urllib3)兼容
3.7.0 3.141.0 无新功能,但稳定性最佳

2. 安装命令

安装 Selenium 4.x(推荐)

bash 复制代码
pip install "selenium==4.11.2" --upgrade
  • 如果报错,可能是依赖冲突,可尝试:

    bash 复制代码
    pip install "selenium==4.11.2" --no-deps

安装 Selenium 3.x(保守选择)

bash 复制代码
pip install "selenium==3.141.0"

3. 验证安装

python 复制代码
import selenium
print(selenium.__version__)  # 应输出 4.11.2 或 3.141.0

4. 兼容性注意事项

  1. ChromeDriver 版本

    • Selenium 4.x 需要 ChromeDriver ≥ 75.0,但建议匹配你的 Chrome 浏览器版本(参考之前回答的 Chrome 109 解决方案)。

    • Selenium 3.x 对 ChromeDriver 的兼容性更宽松。

  2. 依赖库冲突

    Python 3.7 的 setuptoolsurllib3 版本可能较旧,若安装失败,需手动升级:

    bash 复制代码
    pip install --upgrade setuptools urllib3
  3. 功能差异

    • Selenium 4.x 支持 W3C 协议和相对定位器等新特性。

    • Selenium 3.x 使用旧版 JSON Wire 协议,部分新方法不可用(如 find_element(By.XPATH) 需改为 find_element_by_xpath())。


5. 常见问题解决

  • 报错:Cannot uninstall 'selenium'

    强制卸载旧版:

    bash 复制代码
    pip uninstall selenium -y
    pip install "selenium==4.11.2"
  • 报错:No matching distribution

    检查 Python 是否为 32 位版本(Selenium 4.x 需 64 位 Python),或换用国内镜像:

    bash 复制代码
    pip install selenium==4.11.2 -i https://pypi.tuna.tsinghua.edu.cn/simple

6. 终极方案(虚拟环境)

为避免全局环境冲突,建议为 Python 3.7 创建虚拟环境:

bash 复制代码
python -m venv myenv
myenv\Scripts\activate  # Windows
pip install selenium==4.11.2
复制代码
 

总结

  • 推荐版本

    • 优先尝试 Selenium 4.11.2(功能全面)。

    • 若失败则降级到 3.141.0(稳定兼容)。

  • 关键步骤

    1. 确保 pip 关联到 Python 3.7(python -m pip)。

    2. 处理依赖冲突(升级 setuptools/urllib3)。

    3. 验证安装后使用。

相关推荐
我命由我123458 小时前
Element Plus 组件库 - Select 选择器 value 为 index 时的一些问题
开发语言·前端·javascript·vue.js·html·ecmascript·js
沐知全栈开发8 小时前
MySQL 删除数据库指南
开发语言
qq. 28040339849 小时前
js 原型链分析
开发语言·javascript·ecmascript
鹿衔`9 小时前
Flask入门
后端·python·flask
Elnaij9 小时前
从C++开始的编程生活(13)——list和浅谈stack、queue
开发语言·c++
一晌小贪欢13 小时前
【Python数据分析】数据分析与可视化
开发语言·python·数据分析·数据可视化·数据清洗
草莓火锅15 小时前
用c++使输入的数字各个位上数字反转得到一个新数
开发语言·c++·算法
j_xxx404_15 小时前
C++ STL:阅读list源码|list类模拟|优化构造|优化const迭代器|优化迭代器模板|附源码
开发语言·c++
DreamNotOver15 小时前
批量转换论文正文引用为上标
开发语言·论文上标
散峰而望15 小时前
C/C++输入输出初级(一) (算法竞赛)
c语言·开发语言·c++·算法·github