报错处理(1)激活conda环境后pip库不能安装到已经激活的这个环境
博主在安装python库的时候,conda activate 环境名,安装的时候conda install 库名不起作用,报错如下:
(py39-qt) PS D:\pycharm_project\learn_pytorch\pythonProject1> conda install pdfplumber
Collecting package metadata (current_repodata.json):done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source.
总之conda安装无效,只能使用pip安装,并且已经安装成功了。之后运行import 库名的文件又显示没有这个库。
然后在安装时我发现安装的位置是c盘的某个位置,
(py39-qt) PS D:\pycharm_project\learn_pytorch\pythonProject1> pip install pdfplumber
Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple
Requirement already satisfied: pdfplumber in c:\users\lenovo\anaconda3\lib\site-packages (0.11.7)
Requirement already satisfied: pdfminer.six==20250506 in c:\users\lenovo\anaconda3\lib\site-packages (from pdfplumber) (20250506)
Requirement already satisfied: Pillow>=9.1 in c:\users\lenovo\anaconda3\lib\site-packages (from pdfplumber) (11.3.0)
Requirement already satisfied: pypdfium2>=4.18.0 in c:\users\lenovo\anaconda3\lib\site-packages (from pdfplumber) (4.30.0)
Requirement already satisfied: charset-normalizer>=2.0.0 in c:\users\lenovo\anaconda3\lib\site-packages (from pdfminer.six==20250506->pdfplumber) (2.0.4)
Requirement already satisfied: cryptography>=36.0.0 in c:\users\lenovo\anaconda3\lib\site-packages (from pdfminer.six==20250506->pdfplumber) (45.0.7)
Requirement already satisfied: cffi>=1.14 in c:\users\lenovo\anaconda3\lib\site-packages (from cryptography>=36.0.0->pdfminer.six==20250506->pdfplumber) (1.15.0)
Requirement already satisfied: pycparser in c:\users\lenovo\anaconda3\lib\site-packages (from cffi>=1.14->crypnovo\anaconda3\lib\site-packages (from cffi>=1.14->cryptography>=36.0.0->pdfminer.six==20250506->pdfplumber) (2.21)
c:\users\lenovo\anaconda3\lib\site-packages 这是不对的,因为我的环境位置是
E:\anaconda3\envs\py39-qt\
这是因为执行conda info --envs可以看到所有环境的位置,我激活的环境名就是py39-qt
(py39-qt) PS D:\pycharm_project\learn_pytorch\pythonProject1> conda info --envs
# conda environments:
#
base C:\Users\Lenovo\anaconda3
py38-SDK E:\anaconda3\envs\py38-SDK
py39-qt * E:\anaconda3\envs\py39-qt
根据人工智能的要求我执行pip uninstall 库名,卸载了这个库
然后指定安装位置执行pip安装:
E:\anaconda3\envs\py39-qt\Scripts\pip.exe install pdfplumber
成功安装并且运行程序了
或者
# 查看当前 PATH 环境变量
$env:PATH# 临时添加 Conda 环境的路径到 PATH 的开头
$env:PATH = "E:\anaconda3\envs\py39-qt\;E:\anaconda3\envs\py39-qt\Scripts;" + $env:PATH# 然后检查 python 和 pip 的位置
python -c "import sys; print(sys.executable)"
python -m pip --version
验证安装:
安装完成后,验证包是否安装到正确位置:
E:\anaconda3\envs\py39-qt\python.exe -c "import pdfplumber; print('Success!'); print(pdfplumber.__file__)"
这应该显示类似 E:\anaconda3\envs\py39-qt\lib\site-packages\pdfplumber\__init__.py
的路径。
还有一件事就是在安装这个库的过程中,它提醒我的conda出现了冲突问题。因为有如下的报错:
(py39-qt) PS D:\pycharm_project\learn_pytorch\pythonProject1> conda update --all
Traceback (most recent call last):File "C:\Users\Lenovo\anaconda3\lib\site-packages\conda\exceptions.py", line 1082, in __call__return func(*args, **kwargs)File "C:\Users\Lenovo\anaconda3\lib\site-packages\conda\cli\main.py", line 87, in _mainexit_code = do_call(args, p)File "C:\Users\Lenovo\anaconda3\lib\site-packages\conda\cli\conda_argparse.py", line 82, in do_callmodule = import_module(relative_mod, __name__.rsplit('.', 1)[0])File "C:\Users\Lenovo\anaconda3\lib\importlib\__init__.py", line 127, in import_modulereturn _bootstrap._gcd_import(name[level:], package, level)File "<frozen importlib._bootstrap>", line 1030, in _gcd_importFile "<frozen importlib._bootstrap>", line 1007, in _find_and_loadFile "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlockedFile "<frozen importlib._bootstrap>", line 680, in _load_unlockedFile "<frozen importlib._bootstrap_external>", line 850, in exec_moduleFile "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removedFile "C:\Users\Lenovo\anaconda3\lib\site-packages\conda\cli\main_update.py", line 8, in <module>from .install import installFile "C:\Users\Lenovo\anaconda3\lib\site-packages\conda\cli\install.py", line 19, in <module>from ..core.index import calculate_channel_urls, get_indexFile "C:\Users\Lenovo\anaconda3\lib\site-packages\conda\core\index.py", line 13, in <module>from .package_cache_data import PackageCacheData File "C:\Users\Lenovo\anaconda3\lib\site-packages\conda\core\package_cache_data.py", line 14, in <module> from .path_actions import CacheUrlAction, ExtractPackageActionFile "C:\Users\Lenovo\anaconda3\lib\site-packages\conda\core\path_actions.py", line 29, in <module>from ..gateways.connection.download import downloadFile "C:\Users\Lenovo\anaconda3\lib\site-packages\con
da\gateways\connection\download.py", line 14, in <module>from .session import CondaSessionFile "C:\Users\Lenovo\anaconda3\lib\site-packages\con
da\gateways\connection\session.py", line 13, in <module>from .adapters.s3 import S3AdapterFile "C:\Users\Lenovo\anaconda3\lib\site-packages\con
da\gateways\connection\adapters\s3.py", line 12, in <module>import boto3File "C:\Users\Lenovo\anaconda3\lib\site-packages\boto3\__init__.py", line 17, in <module>from boto3.session import SessionFile "C:\Users\Lenovo\anaconda3\lib\site-packages\boto3\session.py", line 17, in <module>import botocore.sessionFile "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\session.py", line 26, in <module>import botocore.clientFile "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\client.py", line 15, in <module>from botocore import waiter, xform_nameFile "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\waiter.py", line 18, in <module>from botocore.docs.docstring import WaiterDocstringFile "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\docs\__init__.py", line 15, in <module>from botocore.docs.service import ServiceDocumenterFile "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\docs\service.py", line 14, in <module>from botocore.docs.client import ClientDocumenter, ClientExceptionsDocumenterFile "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\docs\client.py", line 14, in <module>from botocore.docs.example import ResponseExampleDocumenterFile "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\docs\example.py", line 13, in <module>from botocore.docs.shape import ShapeDocumenter File "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\docs\shape.py", line 19, in <module>from botocore.utils import is_json_value_header File "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\utils.py", line 34, in <module>import botocore.httpsessionFile "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\httpsession.py", line 34, in <module>from urllib3.contrib.pyopenssl import orig_util_SSLContext as SSLContextFile "C:\Users\Lenovo\anaconda3\lib\site-packages\urllib3\contrib\pyopenssl.py", line 50, in <module> import OpenSSL.SSLFile "C:\Users\Lenovo\anaconda3\lib\site-packages\OpenSSL\__init__.py", line 8, in <module>from OpenSSL import crypto, SSLFile "C:\Users\Lenovo\anaconda3\lib\site-packages\OpenSSL\crypto.py", line 1579, in <module>class X509StoreFlags(object):File "C:\Users\Lenovo\anaconda3\lib\site-packages\OpenSSL\crypto.py", line 1598, in X509StoreFlagsNOTIFY_POLICY = _lib.X509_V_FLAG_NOTIFY_POLICY
AttributeError: module 'lib' has no attribute 'X509_V_FLAG_NOTIFY_POLICY'During handling of the above exception, another exception occurred:Traceback (most recent call last):File "C:\Users\Lenovo\anaconda3\Scripts\conda-script.py", line 12, in <module>sys.exit(main())File "C:\Users\Lenovo\anaconda3\lib\site-packages\conda\cli\main.py", line 155, in mainreturn conda_exception_handler(_main, *args, **kwargs)File "C:\Users\Lenovo\anaconda3\lib\site-packages\con
da\exceptions.py", line 1374, in conda_exception_handlerreturn_value = exception_handler(func, *args, **kwargs)File "C:\Users\Lenovo\anaconda3\lib\site-packages\conda\exceptions.py", line 1085, in __call__return self.handle_exception(exc_val, exc_tb) File "C:\Users\Lenovo\anaconda3\lib\site-packages\conda\exceptions.py", line 1129, in handle_exception return self.handle_unexpected_exception(exc_val, exc_tb)File "C:\Users\Lenovo\anaconda3\lib\site-packages\con
da\exceptions.py", line 1140, in handle_unexpected_exceptionself.print_unexpected_error_report(error_report)File "C:\Users\Lenovo\anaconda3\lib\site-packages\con
da\exceptions.py", line 1210, in print_unexpected_error_reportfrom .cli.main_info import get_env_vars_str, get_main_info_strFile "C:\Users\Lenovo\anaconda3\lib\site-packages\conda\cli\main_info.py", line 19, in <module>from ..core.index import _supplement_index_with_systemFile "C:\Users\Lenovo\anaconda3\lib\site-packages\conda\core\index.py", line 13, in <module>from .package_cache_data import PackageCacheData File "C:\Users\Lenovo\anaconda3\lib\site-packages\conda\core\package_cache_data.py", line 14, in <module> from .path_actions import CacheUrlAction, ExtractPackageActionFile "C:\Users\Lenovo\anaconda3\lib\site-packages\conda\core\path_actions.py", line 29, in <module>from ..gateways.connection.download import downloadFile "C:\Users\Lenovo\anaconda3\lib\site-packages\con
da\gateways\connection\download.py", line 14, in <module>from .session import CondaSessionFile "C:\Users\Lenovo\anaconda3\lib\site-packages\con
da\gateways\connection\session.py", line 13, in <module>from .adapters.s3 import S3AdapterFile "C:\Users\Lenovo\anaconda3\lib\site-packages\con
da\gateways\connection\adapters\s3.py", line 12, in <module>import boto3File "C:\Users\Lenovo\anaconda3\lib\site-packages\boto3\__init__.py", line 17, in <module>from boto3.session import SessionFile "C:\Users\Lenovo\anaconda3\lib\site-packages\boto3\session.py", line 17, in <module>import botocore.sessionFile "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\session.py", line 26, in <module>import botocore.clientFile "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\client.py", line 15, in <module>from botocore import waiter, xform_nameFile "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\waiter.py", line 18, in <module>from botocore.docs.docstring import WaiterDocstringFile "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\docs\__init__.py", line 15, in <module>from botocore.docs.service import ServiceDocumenterFile "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\docs\service.py", line 14, in <module>from botocore.docs.client import ClientDocumenter, ClientExceptionsDocumenterFile "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\docs\client.py", line 14, in <module>from botocore.docs.example import ResponseExampleDocumenterFile "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\docs\example.py", line 13, in <module>from botocore.docs.shape import ShapeDocumenter File "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\docs\shape.py", line 19, in <module>from botocore.utils import is_json_value_header File "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\utils.py", line 34, in <module>import botocore.httpsessionFile "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\httpsession.py", line 34, in <module>from urllib3.contrib.pyopenssl import orig_util_SSLContext as SSLContextFile "C:\Users\Lenovo\anaconda3\lib\site-packages\urllib3\contrib\pyopenssl.py", line 50, in <module> import OpenSSL.SSLFile "C:\Users\Lenovo\anaconda3\lib\site-packages\OpenSSL\__init__.py", line 8, in <module>from OpenSSL import crypto, SSLFile "C:\Users\Lenovo\anaconda3\lib\site-packages\OpenSSL\crypto.py", line 1579, in <module>class X509StoreFlags(object):File "C:\Users\Lenovo\anaconda3\lib\site-packages\OpenSSL\crypto.py", line 1598, in X509StoreFlagsNOTIFY_POLICY = _lib.X509_V_FLAG_NOTIFY_POLICY
AttributeError: module 'lib' has no attribute 'X509_V_FLAG_NOTIFY_POLICY'
人工智能:您的 Conda 环境出现了严重问题,特别是与 OpenSSL 相关的库存在兼容性冲突。错误信息显示 AttributeError: module 'lib' has no attribute 'X509_V_FLAG_NOTIFY_POLICY'
,这表明 OpenSSL 库损坏或不兼容。
解决方案
# 首先更新 conda (如果可能)
pip install --upgrade conda# 然后尝试修复 OpenSSL 相关包
pip uninstall pyopenssl cryptography
pip install pyopenssl cryptography#测试是否修复成功,如果这个命令能正常执行并显示环境列表,说明 Conda 已经修复
conda info --envs
然后成功弹出(py39-qt) PS D:\pycharm_project\learn_pytorch\pythonProject1> conda info --envs
# conda environments:
#
base C:\Users\Lenovo\anaconda3
py38-SDK E:\anaconda3\envs\py38-SDK
py39-qt * E:\anaconda3\envs\py39-qt
说明成功解决冲突了