博主在安装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 _main
    exit_code = do_call(args, p)
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\conda\cli\conda_argparse.py", line 82, in do_call
    module = import_module(relative_mod, __name__.rsplit('.', 1)[0])
  File "C:\Users\Lenovo\anaconda3\lib\importlib\__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 850, in exec_module
  File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\conda\cli\main_update.py", line 8, in <module>
    from .install import install
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\conda\cli\install.py", line 19, in <module>
    from ..core.index import calculate_channel_urls, get_index
  File "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, ExtractPackageAction
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\conda\core\path_actions.py", line 29, in <module>
    from ..gateways.connection.download import download
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\con
da\gateways\connection\download.py", line 14, in <module>
    from .session import CondaSession
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\con
da\gateways\connection\session.py", line 13, in <module>
    from .adapters.s3 import S3Adapter
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\con
da\gateways\connection\adapters\s3.py", line 12, in <module>
    import boto3
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\boto3\__init__.py", line 17, in <module>
    from boto3.session import Session
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\boto3\session.py", line 17, in <module>
    import botocore.session
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\session.py", line 26, in <module>
    import botocore.client
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\client.py", line 15, in <module>
    from botocore import waiter, xform_name
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\waiter.py", line 18, in <module>
    from botocore.docs.docstring import WaiterDocstring
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\docs\__init__.py", line 15, in <module>
    from botocore.docs.service import ServiceDocumenter
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\docs\service.py", line 14, in <module>
    from botocore.docs.client import ClientDocumenter, ClientExceptionsDocumenter
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\docs\client.py", line 14, in <module>
    from botocore.docs.example import ResponseExampleDocumenter
  File "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.httpsession
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\httpsession.py", line 34, in <module>
    from urllib3.contrib.pyopenssl import orig_util_SSLContext as SSLContext
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\urllib3\contrib\pyopenssl.py", line 50, in <module>       
    import OpenSSL.SSL
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\OpenSSL\__init__.py", line 8, in <module>
    from OpenSSL import crypto, SSL
  File "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 X509StoreFlags
    NOTIFY_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 main
    return conda_exception_handler(_main, *args, **kwargs)
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\con
da\exceptions.py", line 1374, in conda_exception_handler
    return_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_exception
    self.print_unexpected_error_report(error_report)
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\con
da\exceptions.py", line 1210, in print_unexpected_error_report
    from .cli.main_info import get_env_vars_str, get_main_info_str
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\conda\cli\main_info.py", line 19, in <module>
    from ..core.index import _supplement_index_with_system
  File "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, ExtractPackageAction
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\conda\core\path_actions.py", line 29, in <module>
    from ..gateways.connection.download import download
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\con
da\gateways\connection\download.py", line 14, in <module>
    from .session import CondaSession
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\con
da\gateways\connection\session.py", line 13, in <module>
    from .adapters.s3 import S3Adapter
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\con
da\gateways\connection\adapters\s3.py", line 12, in <module>
    import boto3
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\boto3\__init__.py", line 17, in <module>
    from boto3.session import Session
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\boto3\session.py", line 17, in <module>
    import botocore.session
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\session.py", line 26, in <module>
    import botocore.client
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\client.py", line 15, in <module>
    from botocore import waiter, xform_name
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\waiter.py", line 18, in <module>
    from botocore.docs.docstring import WaiterDocstring
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\docs\__init__.py", line 15, in <module>
    from botocore.docs.service import ServiceDocumenter
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\docs\service.py", line 14, in <module>
    from botocore.docs.client import ClientDocumenter, ClientExceptionsDocumenter
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\docs\client.py", line 14, in <module>
    from botocore.docs.example import ResponseExampleDocumenter
  File "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.httpsession
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\botocore\httpsession.py", line 34, in <module>
    from urllib3.contrib.pyopenssl import orig_util_SSLContext as SSLContext
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\urllib3\contrib\pyopenssl.py", line 50, in <module>       
    import OpenSSL.SSL
  File "C:\Users\Lenovo\anaconda3\lib\site-packages\OpenSSL\__init__.py", line 8, in <module>
    from OpenSSL import crypto, SSL
  File "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 X509StoreFlags
    NOTIFY_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

说明成功解决冲突了

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐