运行Selenium机器人时遇ModuleNotFoundError: No module named 'distutils'报错求助
解决ModuleNotFoundError: No module named 'distutils'问题
你遇到的问题是因为Python 3.12在Windows环境下默认不再预装distutils模块,而undetected_chromedriver的旧版本依然依赖它。试试下面几个步骤:
安装setuptools:
distutils现在被包含在setuptools包中,执行以下命令安装:pip install setuptools如果你的系统里有多个Python版本,建议指定版本避免混淆:
py -3.12 -m pip install setuptools升级undetected_chromedriver:新版本的库可能已经移除了对
distutils的依赖,执行升级命令:pip install --upgrade undetected-chromedriver检查Python安装完整性:如果上述方法无效,确认Windows虚拟机上的Python 3.12安装时是否勾选了"Install for all users"选项,或者是否配置了正确的环境变量,确保pip命令指向的是你的Python 3.12版本。
如果还是有问题,可以手动修改patcher.py文件(路径:C:\Users\ahamed_a_1235\AppData\Local\Programs\Python\Python312\Lib\site-packages\undetected_chromedriver\patcher.py),把from distutils.version import LooseVersion替换成:
from packaging.version import parse as LooseVersion
替换前记得先备份文件,不过优先推荐升级库的方案,更稳妥。
内容的提问来源于stack exchange,提问作者collatz
相关产品推荐
相关产品推荐

