AttributeError: HTMLParser 对象没有属性 unescape
AttributeError: HTMLParser object has no attribute unescape
“AttributeError: ‘HTMLParser’ object has no attribute ‘unescape’” 的发生是因为HTMLParser.unescape
在 Python 版本中已被弃用和删除
3.9
。
要解决该错误,请升级您的模块版本setuptools
。
File "/usr/lib/python3/dist-packages/setuptools/py33compat.py", line 54, in <module> unescape = getattr(html, 'unescape', html_parser.HTMLParser().unescape) AttributeError: 'HTMLParser' object has no attribute 'unescape'
HTMLParser.unescape 在 Python 版本中已被弃用和删除,3.9
如果您的模块版本过时,这会导致问题setuptools
。
更新你的版本setuptools
打开您的终端并运行以下命令来
升级 setuptools。
pip install --upgrade setuptools pip3 install --upgrade setuptools # 👇️ if you don't have pip in PATH python -m pip install --upgrade setuptools python3 -m pip install --upgrade setuptools py -m pip install --upgrade setuptools
更新你的版本distlib
如果错误仍然存在,请
同时升级distlib包。
pip install --upgrade distlib pip3 install --upgrade distlib # 👇️ if you don't have pip in PATH python -m pip install --upgrade distlib python3 -m pip install --upgrade distlib py -m pip install --upgrade distlib
如果错误未解决,请使用python --version
命令获取您的 Python 版本。
python --version python3 --version
现在,尝试运行适用于您的特定 Python 版本的命令。
例如,我的 Python 版本是3.10
,所以我将运行以下命令。
pip3.10 install --upgrade setuptools distlib python3.10 -m pip install --upgrade setuptools distlib
更新你的版本pip
如果错误未解决,请尝试
升级您的pip
.
pip
以下是在所有操作系统上升级的命令。
# 👇️ if you have pip already installed pip install --upgrade pip # 👇️ if your pip is aliased as pip3 (Python 3) pip3 install --upgrade pip # 👇️ if you don't have pip in your PATH environment variable python -m pip install --upgrade pip # 👇️ if you don't have pip in your PATH environment variable python3 -m pip install --upgrade pip # 👇️ if you have easy_install easy_install --upgrade pip # 👇️ if you get a permissions error sudo easy_install --upgrade pip # 👇️ if you get a permissions error when upgrading pip pip install --upgrade pip --user # 👇️ upgrade pip scoped to the current user (if you get permissions error) python -m pip install --user --upgrade pip python3 -m pip install --user --upgrade pip # 👇️ Installing directly from get-pip.py (MacOS and Linux) curl https://bootstrap.pypa.io/get-pip.py | python # 👇️ if you get permissions issues curl https://bootstrap.pypa.io/get-pip.py | sudo python # 👇️ alternative for Ubuntu/Debian sudo apt-get update && apt-get upgrade python-pip # 👇️ alternative for Red Hat / CentOS / Fedora sudo yum install epel-release sudo yum install python-pip sudo yum update python-pip
如果您仍然遇到错误,请尝试将pip
scoped 升级到您的特定 Python 版本。
pip3.10 install --upgrade pip python3.10 -m pip install --upgrade pip
如果错误未解决,请尝试运行以下命令进行升级
pip
。
# 👇️ On Linux or macOS python -m ensurepip --upgrade # 👇️ using python 3 python3 -m ensurepip --upgrade # 👇️ On Windows py -m ensurepip --upgrade
ensurepip
软件包使我们能够将安装程序引导到现有的 Python 安装或虚拟环境中。 pip
或者,您可以使用
官方的 get-pip脚本来安装 pip。
通过以下方式从https://bootstrap.pypa.io/get-pip.py下载脚本
:
- 单击链接。
- 在浏览器中右键单击并选择“另存为”。
get-pip.py
并运行以下命令。# 👇️ On Linux or macOS python get-pip.py # 👇️ using Python 3 python3 get-pip.py # 👇️ On Windows py get-pip.py
该get-pip.py
脚本使用引导逻辑来安装pip
.
curl
您还可以使用(如果已安装)下载脚本。 curl
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py # 👇️ On Linux or macOS python get-pip.py --force-reinstall # 👇️ using python 3 python3 get-pip.py --force-reinstall # 👇️ On Windows py get-pip.py --force-reinstall
如果错误仍然存在,请尝试python -m
在安装包时使用命令。
python -m pip install requests python3 -m pip install requests py -m pip install requests
如果这没有帮助,请尝试创建一个虚拟环境。
# 创建虚拟环境
解决“AttributeError: HTMLParser object has no attribute unescape”错误:
- 创建一个虚拟环境。
- 激活虚拟环境。
pip install
在虚拟环境处于活动状态的情况下运行命令。
# 👇️ use correct version of Python when creating VENV python -m venv venv # 👇️ activate on Unix or MacOS source venv/bin/activate # 👇️ activate on Windows (cmd.exe) venv\Scripts\activate.bat # 👇️ activate on Windows (PowerShell) venv\Scripts\Activate.ps1 # 👇️ install the specific package in the virtual environment pip install hiredis
如果该python -m venv venv
命令不起作用,请尝试以下 2 个命令:
python3 -m venv venv
py -m venv venv
确保根据您的操作系统和 shell 使用正确的命令来激活您的虚拟环境。
您的虚拟环境将使用用于创建它的 Python 版本。