Python 3.7 anaconda 环境 - import _ssl DLL 加载失败错误
Posted
技术标签:
【中文标题】Python 3.7 anaconda 环境 - import _ssl DLL 加载失败错误【英文标题】:Python 3.7 anaconda environment - import _ssl DLL load fail error 【发布时间】:2019-06-08 01:25:22 【问题描述】:我用 Python=3.7 创建了 anaconda 环境,遇到了 _ssl 和 DLL 的错误。当我试图回到我的基本环境时,我无法让后台进程完成,如下图所示,这种情况一直持续。
错误:
C:\Users\abhil\AppData\Local\Continuum\anaconda3\envs\HeisenbergPy37\python.exe "C:\Program Files\JetBrains\PyCharm Community Edition 2018.1.1\helpers\pydev\pydevconsole.py" --mode=client --port=63950
Traceback (most recent call last):
File "C:\Program Files\JetBrains\PyCharm Community Edition 2018.1.1\helpers\pydev\pydevconsole.py", line 5, in <module>
from _pydev_comm.rpc import make_rpc_client, start_rpc_server, start_rpc_server_and_make_client
File "C:\Program Files\JetBrains\PyCharm Community Edition 2018.1.1\helpers\pydev\_pydev_comm\rpc.py", line 4, in <module>
from _pydev_comm.server import TSingleThreadedServer
File "C:\Program Files\JetBrains\PyCharm Community Edition 2018.1.1\helpers\pydev\_pydev_comm\server.py", line 4, in <module>
from _shaded_thriftpy.server import TServer
File "C:\Program Files\JetBrains\PyCharm Community Edition 2018.1.1\helpers\third_party\thriftpy\_shaded_thriftpy\server.py", line 9, in <module>
from _shaded_thriftpy.transport import (
File "C:\Program Files\JetBrains\PyCharm Community Edition 2018.1.1\helpers\third_party\thriftpy\_shaded_thriftpy\transport\__init__.py", line 57, in <module>
from .sslsocket import TSSLSocket, TSSLServerSocket # noqa
File "C:\Program Files\JetBrains\PyCharm Community Edition 2018.1.1\helpers\third_party\thriftpy\_shaded_thriftpy\transport\sslsocket.py", line 7, in <module>
import ssl
File "C:\Users\abhil\AppData\Local\Continuum\anaconda3\envs\HeisenbergPy37\lib\ssl.py", line 98, in <module>
import _ssl # if we can't import it, let the error propagate
ImportError: DLL load failed: The specified module could not be found.
Process finished with exit code 1
所有用
安装的包conda create -n anaconda python=3.7
C:\WINDOWS\system32>conda list
# packages in environment at C:\Users\abhil\AppData\Local\Continuum\anaconda3\envs\HeisenbergPy37:
#
# Name Version Build Channel
alabaster 0.7.12 py37_0
anaconda 2018.12 py37_0
anaconda-client 1.7.2 py37_0
anaconda-project 0.8.2 py37_0
asn1crypto 0.24.0 py37_0
astroid 2.1.0 py37_0
astropy 3.1 py37he774522_0
atomicwrites 1.2.1 py37_0
attrs 18.2.0 py37h28b3542_0
babel 2.6.0 py37_0
backcall 0.1.0 py37_0
backports 1.0 py37_1
backports.os 0.1.1 py37_0
backports.shutil_get_terminal_size 1.0.0 py37_2
beautifulsoup4 4.6.3 py37_0
bitarray 0.8.3 py37hfa6e2cd_0
bkcharts 0.2 py37_0
blas 1.0 mkl
blaze 0.11.3 py37_0
bleach 3.0.2 py37_0
blosc 1.14.4 he51fdeb_0
bokeh 1.0.2 py37_0
boto 2.49.0 py37_0
bottleneck 1.2.1 py37h452e1ab_1
bzip2 1.0.6 hfa6e2cd_5
ca-certificates 2018.03.07 0
certifi 2018.11.29 py37_0
cffi 1.11.5 py37h74b6da3_1
chardet 3.0.4 py37_1
click 7.0 py37_0
cloudpickle 0.6.1 py37_0
clyent 1.2.2 py37_1
colorama 0.4.1 py37_0
comtypes 1.1.7 py37_0
console_shortcut 0.1.1 3
contextlib2 0.5.5 py37_0
cryptography 2.4.2 py37h7a1dbc1_0
curl 7.63.0 h2a8f88b_1000
cycler 0.10.0 py37_0
cython 0.29.2 py37ha925a31_0
cytoolz 0.9.0.1 py37hfa6e2cd_1
dask 1.0.0 py37_0
dask-core 1.0.0 py37_0
datashape 0.5.4 py37_1
decorator 4.3.0 py37_0
defusedxml 0.5.0 py37_1
distributed 1.25.1 py37_0
docutils 0.14 py37_0
entrypoints 0.2.3 py37_2
et_xmlfile 1.0.1 py37_0
fastcache 1.0.2 py37hfa6e2cd_2
filelock 3.0.10 py37_0
flask 1.0.2 py37_1
flask-cors 3.0.7 py37_0
freetype 2.9.1 ha9979f8_1
get_terminal_size 1.0.0 h38e98db_0
gevent 1.3.7 py37he774522_1
glob2 0.6 py37_1
greenlet 0.4.15 py37hfa6e2cd_0
h5py 2.8.0 py37h3bdd7fb_2
hdf5 1.10.2 hac2f561_1
heapdict 1.0.0 py37_2
html5lib 1.0.1 py37_0
icc_rt 2019.0.0 h0cc432a_1
icu 58.2 ha66f8fd_1
idna 2.8 py37_0
imageio 2.4.1 py37_0
imagesize 1.1.0 py37_0
importlib_metadata 0.6 py37_0
intel-openmp 2019.1 144
ipykernel 5.1.0 py37h39e3cac_0
ipython 7.2.0 py37h39e3cac_0
ipython_genutils 0.2.0 py37_0
ipywidgets 7.4.2 py37_0
isort 4.3.4 py37_0
itsdangerous 1.1.0 py37_0
jdcal 1.4 py37_0
jedi 0.13.2 py37_0
jinja2 2.10 py37_0
jpeg 9b hb83a4c4_2
jsonschema 2.6.0 py37_0
jupyter 1.0.0 py37_7
jupyter_client 5.2.4 py37_0
jupyter_console 6.0.0 py37_0
jupyter_core 4.4.0 py37_0
jupyterlab 0.35.3 py37_0
jupyterlab_server 0.2.0 py37_0
keyring 17.0.0 py37_0
kiwisolver 1.0.1 py37h6538335_0
krb5 1.16.1 hc04afaa_7
lazy-object-proxy 1.3.1 py37hfa6e2cd_2
libarchive 3.3.3 h0643e63_5
libcurl 7.63.0 h2a8f88b_1000
libiconv 1.15 h1df5818_7
libpng 1.6.35 h2a8f88b_0
libsodium 1.0.16 h9d3ae62_0
libssh2 1.8.0 h7a1dbc1_4
libtiff 4.0.9 h36446d0_2
libxml2 2.9.8 hadb2253_1
libxslt 1.1.32 hf6f1972_0
llvmlite 0.26.0 py37ha925a31_0
locket 0.2.0 py37_1
lxml 4.2.5 py37hef2cd61_0
lz4-c 1.8.1.2 h2fa13f4_0
lzo 2.10 h6df0209_2
m2w64-gcc-libgfortran 5.3.0 6
m2w64-gcc-libs 5.3.0 7
m2w64-gcc-libs-core 5.3.0 7
m2w64-gmp 6.1.0 2
m2w64-libwinpthread-git 5.0.0.4634.697f757 2
markupsafe 1.1.0 py37he774522_0
matplotlib 3.0.2 py37hc8f65d3_0
mccabe 0.6.1 py37_1
menuinst 1.4.14 py37hfa6e2cd_0
mistune 0.8.4 py37he774522_0
mkl 2019.1 144
mkl-service 1.1.2 py37hb782905_5
mkl_fft 1.0.6 py37h6288b17_0
mkl_random 1.0.2 py37h343c172_0
more-itertools 4.3.0 py37_0
mpmath 1.1.0 py37_0
msgpack-python 0.5.6 py37he980bc4_1
msys2-conda-epoch 20160418 1
multipledispatch 0.6.0 py37_0
nbconvert 5.4.0 py37_1
nbformat 4.4.0 py37_0
networkx 2.2 py37_1
nltk 3.4 py37_1
nose 1.3.7 py37_2
notebook 5.7.4 py37_0
numba 0.41.0 py37hf9181ef_0
numexpr 2.6.8 py37hdce8814_0
numpy 1.15.4 py37h19fb1c0_0
numpy-base 1.15.4 py37hc3f5095_0
numpydoc 0.8.0 py37_0
odo 0.5.1 py37_0
olefile 0.46 py37_0
openpyxl 2.5.12 py37_0
openssl 1.1.1a he774522_0
packaging 18.0 py37_0
pandas 0.23.4 py37h830ac7b_0
pandoc 1.19.2.1 hb2460c7_1
pandocfilters 1.4.2 py37_1
parso 0.3.1 py37_0
partd 0.3.9 py37_0
path.py 11.5.0 py37_0
pathlib2 2.3.3 py37_0
patsy 0.5.1 py37_0
pep8 1.7.1 py37_0
pickleshare 0.7.5 py37_0
pillow 5.3.0 py37hdc69c19_0
pip 18.1 py37_0
pkginfo 1.4.2 py37_1
pluggy 0.8.0 py37_0
ply 3.11 py37_0
prometheus_client 0.5.0 py37_0
prompt_toolkit 2.0.7 py37_0
psutil 5.4.8 py37he774522_0
py 1.7.0 py37_0
pycodestyle 2.4.0 py37_0
pycosat 0.6.3 py37hfa6e2cd_0
pycparser 2.19 py37_0
pycrypto 2.6.1 py37hfa6e2cd_9
pycurl 7.43.0.2 py37h7a1dbc1_0
pyflakes 2.0.0 py37_0
pygments 2.3.1 py37_0
pylint 2.2.2 py37_0
pyodbc 4.0.25 py37ha925a31_0
pyopenssl 18.0.0 py37_0
pyparsing 2.3.0 py37_0
pyqt 5.9.2 py37h6538335_2
pysocks 1.6.8 py37_0
pytables 3.4.4 py37he6f6034_0
pytest 4.0.2 py37_0
pytest-arraydiff 0.3 py37h39e3cac_0
pytest-astropy 0.5.0 py37_0
pytest-doctestplus 0.2.0 py37_0
pytest-openfiles 0.3.1 py37_0
pytest-remotedata 0.3.1 py37_0
python 3.7.1 h8c8aaf0_6
python-dateutil 2.7.5 py37_0
python-libarchive-c 2.8 py37_6
pytz 2018.7 py37_0
pywavelets 1.0.1 py37h8c2d366_0
pywin32 223 py37hfa6e2cd_1
pywinpty 0.5.5 py37_1000
pyyaml 3.13 py37hfa6e2cd_0
pyzmq 17.1.2 py37hfa6e2cd_0
qt 5.9.7 vc14h73c81de_0
qtawesome 0.5.3 py37_0
qtconsole 4.4.3 py37_0
qtpy 1.5.2 py37_0
requests 2.21.0 py37_0
rope 0.11.0 py37_0
ruamel_yaml 0.15.46 py37hfa6e2cd_0
scikit-image 0.14.1 py37ha925a31_0
scikit-learn 0.20.1 py37h343c172_0
scipy 1.1.0 py37h29ff71c_2
seaborn 0.9.0 py37_0
send2trash 1.5.0 py37_0
setuptools 40.6.3 py37_0
simplegeneric 0.8.1 py37_2
singledispatch 3.4.0.3 py37_0
sip 4.19.8 py37h6538335_0
six 1.12.0 py37_0
snappy 1.1.7 h777316e_3
snowballstemmer 1.2.1 py37_0
sortedcollections 1.0.1 py37_0
sortedcontainers 2.1.0 py37_0
sphinx 1.8.2 py37_0
sphinxcontrib 1.0 py37_1
sphinxcontrib-websupport 1.1.0 py37_1
spyder 3.3.2 py37_0
spyder-kernels 0.3.0 py37_0
sqlalchemy 1.2.15 py37he774522_0
sqlite 3.26.0 he774522_0
statsmodels 0.9.0 py37h452e1ab_0
sympy 1.3 py37_0
tblib 1.3.2 py37_0
terminado 0.8.1 py37_1
testpath 0.4.2 py37_0
tk 8.6.8 hfa6e2cd_0
toolz 0.9.0 py37_0
tornado 5.1.1 py37hfa6e2cd_0
tqdm 4.28.1 py37h28b3542_0
traitlets 4.3.2 py37_0
unicodecsv 0.14.1 py37_0
urllib3 1.24.1 py37_0
vc 14.1 h0510ff6_4
vs2015_runtime 14.15.26706 h3a45250_0
wcwidth 0.1.7 py37_0
webencodings 0.5.1 py37_1
werkzeug 0.14.1 py37_0
wheel 0.32.3 py37_0
widgetsnbextension 3.4.2 py37_0
win_inet_pton 1.0.1 py37_1
win_unicode_console 0.5 py37_0
wincertstore 0.2 py37_0
winpty 0.4.3 4
wrapt 1.10.11 py37hfa6e2cd_2
xlrd 1.2.0 py37_0
xlsxwriter 1.1.2 py37_0
xlwings 0.15.1 py37_0
xlwt 1.3.0 py37_0
xz 5.2.4 h2fa13f4_4
yaml 0.1.7 hc54c509_2
zeromq 4.2.5 he025d50_1
zict 0.1.3 py37_0
zlib 1.2.11 h62dcd97_3
zstd 1.3.7 h508b16e_0
【问题讨论】:
这个错误到底是什么时候发生的?在这个环境中,您似乎有 很多 个包,而不是通过简单运行来安装:conda create -n anaconda python=3.7
@user9074332 没有使用您显示的命令安装所有这些软件包。
已知问题youtrack.jetbrains.com/issue/PY-27234
在我的情况下,只需 重新启动 Intellij IDEA,它就会自动运行......
【参考方案1】:
我已经回答了这个here,据我了解,这个错误是由于 anaconda3/DLLs 文件夹中 libcrypto 文件丢失/错位造成的:
从
anaconda3\Library\bin
复制下面的文件并粘贴到anaconda3/DLLs
:
- libcrypto-1_1-x64.dll
- libssl-1_1-x64.dll
【讨论】:
当您已经设置了路径并且仍然出现错误时,此方法有效。 谢谢!当我在我的“miniconda”环境中遇到这个问题时,它对我有用。所以我从C:\Users\<my_username>\AppData\Local\Continuum\miniconda3\envs\<my_conda_environment>\Library\bin
复制了你提到的文件并将它们粘贴到C:\Users\<my_username>\AppData\Local\Continuum\miniconda3\envs\<my_conda_environment>\DLLs
,现在PyCharm连接到控制台。
我将 anaconda3\Library\bin 添加到路径中,它对我有用
适用于 Windows Server 2016 和 Anaconda 2020.02。我讨厌 Windows。
我已经在我的环境文件夹(不是 Anaconda3 的)内的 DLLs 文件夹中添加了 dll,它似乎可以工作。谢谢【参考方案2】:
这可以通过手动将 PyCharm 中的 PATH
变量添加到控制台来解决。
-
打开 Anaconda cmd
Activate your Conda environment
通过键入
echo %PATH%
获取完整的 PATH 值
如果您在 Windows 7 上/无法复制输出,请将 cmd cd 到您的桌面并输入 echo %PATH% > path_val.txt
这将创建一个 txt 文件,以便您可以更轻松地复制/粘贴值。
在PyCharm中,进入设置->构建、执行、部署->控制台->Python控制台->点击环境变量右侧的文件夹。
单击加号按钮添加新的环境变量
名称应为PATH
该值是上述echo %PATH%
命令的全部输出。
单击确定,然后应用。
【讨论】:
我是原始 OP,现在我尝试在 PyCharm Community 2019.1 版本中按照您的步骤操作,我根本无法粘贴 echo %PATH% 的输出。它只是不粘贴。 看起来 PyCharm 现在希望粘贴的值包含变量名称、等号,然后是变量值。在您的终端中,键入 echo PATH=%PATH%|clip。这将复制 PyCharm 期望的格式,然后您可以单击环境变量屏幕上的粘贴按钮。 为什么需要激活conda环境?它到底在做什么,是不是像创建虚拟环境一样? 因为OP使用的是新的Anaconda环境,所以解释器的路径不同。您可以自己尝试,在基本环境中键入 echo %PATH% ,然后在激活另一个命令后再次运行该命令 - 输出会有所不同。对后一个问题是肯定的;这些环境是 Anaconda 对虚拟环境的实现。 必须在特定模块运行配置中进行此更改(添加 PATH 环境变量)【参考方案3】:您可以尝试设置系统环境变量,例如 "C:\Python\Anaconda3;C:\Python\Anaconda3\Scripts; C:\Python\Anaconda3\Library\bin;".
仅“C:\Python\Anaconda3\Scripts;”还不够,它对我有用。
【讨论】:
为什么要评论?这正是我需要的答案。添加C:\Python\Anaconda3\Library\bin
解决了我的问题。 python -c 'import ssl' 现在可以工作了。
不能对此进行足够的投票!我在让 python 在 Windows 机器上从 Matlab 运行时遇到了很多麻烦。一直抱怨找不到dll
的东西。原来它不是 Matlab ......它是系统路径。我添加了那些经常推荐的,但仍然没有用。关键是这个解决方案....添加 `Library\bin" 路径【参考方案4】:
我在 Windows 10 Pro x64 和 PyCharm CE 2018.3 上遇到了同样的问题
对我有用的解决方案:为所有用户重新安装 Anaconda3(具有管理员权限)并选择“将 python.exe 添加到路径”(即使不推荐)。然后 PyCharm 连接成功,没有这个错误。
同样有效的解决方法:使用其他环境(pyenv 或 conda)。当我在
上遇到同样的问题时,它对我有用我在网上看到的一些其他建议:
运行Anaconda3\Scripts>conda update --all
但是这引发了HTTP连接错误上升,这可能是相关的。
【讨论】:
【参考方案5】:以上方法都不适合我,而是 Windows 10 Enterprise 上的 OpenSSL 存在问题。我通过从这里下载并安装 OpenSSL 来修复它:https://slproweb.com/products/Win32OpenSSL.html
【讨论】:
【参考方案6】:如果在虚拟环境下运行(即您已发出命令:conda activate
要复制的文件(libcrypto-1_1-x64.dll 和 libssl-1_1-x64.dll)位于:
C:\USER.conda\envs
它们必须被复制到:
C:\USER.conda\envs
【讨论】:
谢谢。这对我有帮助 :) 其他解决方案本身不起作用【参考方案7】:在我的情况下,错误是从非基础 conda env 旋转 pipenv 的结果。在 PyCharm 中设置变量或在基本 anaconda 结构中移动文件没有帮助,因为 PyCharm 在我的 conda env 中寻找这些 DLL。
所以我不得不从基础 conda 结构中移动文件: C:\Users\AppData\Local\Continuum\anaconda3\Library\bin
到我在 PyCharm 中使用的最终 Pipenv 的 conda env 中:
C:\Users\AppData\Local\Continuum\anaconda3\envs
为了让 IPython 正常工作,我必须移动的文件:
libcrypto-1_1-x64.dll
libssl-1_1-x64.dll
sqlite3.dll
sqlite3.exe
原因是并非所有库/二进制文件都传播到虚拟环境。虚拟环境能够在“根 Python”中找到这些文件。由于没有复制它们,Venvs 变得更轻。
但是,PyCharm 在我这样的设置中会感到困惑,并将中间的 conda env 视为“根 Python”,并且找不到库/bin。这个问题可能会在其他 dll 或 bin 中显现出来。
以这种方式移动所有丢失的文件可能是值得的。
【讨论】:
【参考方案8】:另一种解决方案:编辑python3.7的site.py(在Lib dir中):
from os.path import join, abspath, dirname
base_path = dirname(dirname(abspath(__file__)))
os.environ['PATH'] = '%s%s' % (
os.environ['PATH'],
join(base_path, 'Library', 'bin'),
)
【讨论】:
【参考方案9】:如果有人在搜索 Eclipse PyDev,它与 Rob 的 answer 相同。
没有。 4 可以在 Window -> Preferences -> PyDev -> Interpreters -> Python Interpreters -> Environment -> 点击 New 并添加 PATH
【讨论】:
【参考方案10】:我已更新到 Python 3.8(带有 miniconda),但它不适用于 Pycharm 生成“anaconda-environment-import-ssl-dll-load-fail-error”。我在这里尝试了几个建议,并以不同的方式调整了环境变量,但没有取得多大成功。 最后我更新到 Pycharm 2020.2.3,它就像一个魅力,没有任何调整..
【讨论】:
【参考方案11】:感谢您的回答! 这绝对有效。
我已经在这里回答了这个问题,据我了解,这个错误是由于 anaconda3/DLLs 文件夹中的 libcrypto 文件丢失/错位引起的:
从 anaconda3\Library\bin 复制以下文件并将它们粘贴到 anaconda3/DLLs 中:
libcrypto-1_1-x64.dll libssl-1_1-x64.dll【讨论】:
以上是关于Python 3.7 anaconda 环境 - import _ssl DLL 加载失败错误的主要内容,如果未能解决你的问题,请参考以下文章
Anaconda创建虚拟环境+Pycharm使用Anaconda创建的虚拟环境
Anaconda Jupyter软件安装TensorFlow教程
没有模块 QtMultimedia [Mac OS - Anaconda - Python 3.7 - PyQt5]