Virtualenv: Windows 10์—์„œ `pip`๋ฅผ ํ†ตํ•ด ํŒจํ‚ค์ง€๋ฅผ ์„ค์น˜ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. Python์˜ ssl ๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

์— ๋งŒ๋“  2018๋…„ 02์›” 28์ผ  ยท  54์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: pypa/virtualenv

python ๋ฒ„์ „: 3.6(Windows 2018 ์—…๋ฐ์ดํŠธ 1์šฉ Python์šฉ Intel ๋ฐฐํฌ)
virtualenv ๋ฒ„์ „: 15.1.0
Windows ๋ฒ„์ „: Windows 10 pro, ๋นŒ๋“œ 17101.rs4_release.180211-1040

2๊ฐœ์˜ ๋ช…๋ น๋งŒ ์‹คํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค. Powershell ์ถœ๋ ฅ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

PS E:\Python\Virtualenv\Scripts> .\activate
(Virtualenv) PS E:\Python\Virtualenv\Scripts> pip install numpy
pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
Collecting numpy
  Could not fetch URL https://pypi.python.org/simple/numpy/: There was a problem confirming the ssl certificate: Can't connect to HTTPS URL because the SSL module is not available. - skipping
  Could not find a version that satisfies the requirement numpy (from versions: )
No matching distribution found for numpy

Python ๋””๋ ‰ํ† ๋ฆฌ๋Š” python์ด ์„ค์น˜๋œ ๋””๋ ‰ํ† ๋ฆฌ๊ฐ€ ์•„๋‹ˆ๋ผ ์ผ๋ฐ˜ ๋””๋ ‰ํ† ๋ฆฌ์ž…๋‹ˆ๋‹ค.

here ์™€ ๊ฐ™์€ ๋…๋ฆฝํ˜• openssl์„ ์„ค์น˜ํ•˜๋ ค๊ณ  ์‹œ๋„ํ–ˆ์ง€๋งŒ ๋‘˜ ๋‹ค ์ž‘๋™ํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

๋‚˜๋Š” ๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๋‹ค. ๋‚˜๋Š” python๊ณผ jupyter๋กœ aconda๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ƒˆ ์ปดํ“จํ„ฐ๋ฅผ ๊ตฌ์„ฑํ•˜๊ณ  ์žˆ์—ˆ๊ณ  ํŒจํ‚ค์ง€ ์‚ฌ์šฉ pip๋ฅผ ์„ค์น˜ํ•˜๋ ค๊ณ  ํ•  ๋•Œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.

์œ„์˜ ๋…ผ์˜๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ์ด๊ฒƒ์ด ํ™˜๊ฒฝ ๋ฌธ์ œ๋ผ๊ณ  ์ƒ๊ฐํ•˜์—ฌ cmd ๋Œ€์‹  Anaconda Prompt ์—์„œ "pip install" ๋ช…๋ น์„ ์‹คํ–‰ํ•ด ๋ณด์•˜์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  pip ๋ช…๋ น์ด ์‹คํ–‰๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๐Ÿ˜

๋ชจ๋“  54 ๋Œ“๊ธ€

์‚ฌ์šฉ๋œ pip ์ด virtualenv ์— ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•ฉ๋‹ˆ๋‹ค. _system_ pip ์„(๋ฅผ) ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? ๊ทธ๋ ‡์ง€ ์•Š์€ ๊ฒฝ์šฐ ์ด๊ฒƒ์€ virtualenv ๋ฌธ์ œ๊ฐ€ ์•„๋‹ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค ...

@tobiasherp
pip ์‹œ์Šคํ…œ์€ ์ •์ƒ์ด์ง€๋งŒ virtualenv์˜ pip ๋Š” ์ข‹์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
์–ด๋””๊ฐ€ ๋ฌธ์ œ์ธ์ง€ ๋ชจ๋ฅด๊ฒ ๊ณ  ๊ตฌ๊ธ€์—์„œ๋„ ๋น„์Šทํ•œ ์ƒํ™ฉ์„ ๋ชป์ฐพ๊ฒ ๋„ค์š”. :(
numpy ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์˜จ๋ผ์ธ์œผ๋กœ ํŒจํ‚ค์ง€๋ฅผ ์„ค์น˜ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ํœ  ํŒŒ์ผ์ด ์žˆ์œผ๋ฉด ์„ฑ๊ณต์ ์œผ๋กœ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ SSL๊ณผ ๊ด€๋ จ๋œ ๋ฌธ์ œ์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋งž์Šต๋‹ˆ๋‹ค. ์ด์ œ PyPI๋Š” https๋ฅผ ์‚ฌ์šฉํ•˜๋ฏ€๋กœ SSL ์ง€์›์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์‹œ์Šคํ…œ Python์— ์—†์œผ๋ฉด virtualenv์—๋„ ์—†์Šต๋‹ˆ๋‹ค. Python 3์—์„œ๋Š” ssl ๋ชจ๋“ˆ์„ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

>>> import ssl

๊ฐ€์žฅ ์ข‹์€ ๋ฐฉ๋ฒ•์€ ssl ๋ชจ๋“ˆ์ด ์žˆ๋Š” ์ธํ„ฐํ”„๋ฆฌํ„ฐ๋กœ ์ „ํ™˜ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
๋ฐฉ๊ธˆ https://www.python.org/ ์—์„œ ๋‹ค์šด๋กœ๋“œํ•œ 3.6.4 ์ธํ„ฐํ”„๋ฆฌํ„ฐ๊ฐ€ ssl์„ ์ง€์›ํ•˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

AFAICS, ์ด๊ฒƒ์€ virtualenv ๋ฌธ์ œ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ํ์‡„ํ•  ๊ฒƒ์„ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค.

venv ๋ฌธ์ œ๊ฐ€ ์•„๋‹ ์ˆ˜๋„ ์žˆ์ง€๋งŒ ์—ฌ์ „ํžˆ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ์ œ ๊ฒฝ์šฐ์—๋Š” venv ๋˜๋Š” ์‹œ์Šคํ…œ pip์— ์„ค์น˜ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
Win 10 64๋น„ํŠธ์— IntelPython3์ด ์„ค์น˜๋˜์–ด ์žˆ๊ณ  ์˜ˆ openssl์ด ์„ค์น˜ ๋ฐ ์ปดํŒŒ์ผ๋˜์–ด ์žˆ์ง€๋งŒ ์–ด๋–ค ์ด์œ ๋กœ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ์ด๊ฒƒ์„ ๋ณด์•˜๋‹ค: [(https://software.intel.com/en-us/forums/intel-distribution-for-python/topic/737878#comment-1920719)]

๊ทธ๋Ÿฌ๋‚˜ ์ด ๋ฌธ์ œ์˜ ๋‚ด ๋ฒ„์ „์„ ์ˆ˜์ •ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

์ด ๋ฌธ์ œ์— ๋Œ€ํ•œ ๋ชจ๋“  ์กฐ์–ธ์€ ๋งค์šฐ ๋„์›€์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค

@theCJMan ์•„์ง๋„ ์ด ๋ฌธ์ œ๋ฅผ ๊ฒช๊ณ  ๊ณ„์‹ญ๋‹ˆ๊นŒ?

๋‚˜๋Š” ๊ทธ ๋ฌธ์ œ์— ๋Œ€ํ•ด

2018๋…„ 4์›” 17์ผ ํ™”์š”์ผ, 19:44 Sumana Harihareswara, [email protected]
์ผ๋‹ค:

@theCJMan https://github.com/theCJMan ์•„์ง๋„ ์ด๋Ÿฐ ํ˜„์ƒ์„ ๊ฒช๊ณ  ๊ณ„์‹ ๊ฐ€์š”?
๋ฌธ์ œ?

โ€”
๋‹น์‹ ์ด ์–ธ๊ธ‰๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธํ•˜์„ธ์š”.
https://github.com/pypa/virtualenv/issues/1139#issuecomment-382081077 ,
๋˜๋Š” ์Šค๋ ˆ๋“œ ์Œ์†Œ๊ฑฐ
https://github.com/notifications/unsubscribe-auth/AkTyyw5zfrJFZleItkAkrR1_kE9R-C8Cks5tpioOgaJpZM4SWUf4
.

์ „์†ก ๊ณ„์ธต ๋ณด์•ˆ(TLS)์€ ์ปดํ“จํ„ฐ์™€ PyPI ๊ฐ„์˜ ์—ฐ๊ฒฐ์ด ๋น„๊ณต๊ฐœ๋กœ ์•ˆ์ „ํ•˜๊ฒŒ ์œ ์ง€๋˜๋„๋ก ํ•˜๋Š” ๋ฐฉ๋ฒ•์˜ ์ผ๋ถ€์ž…๋‹ˆ๋‹ค. ์‹œ๊ฐ„์ด ์ง€๋‚จ์— ๋”ฐ๋ผ ์—ฌ๋Ÿฌ ๋ฒ„์ „์ด ์žˆ๋Š” ์•”ํ˜ธํ™” ํ”„๋กœํ† ์ฝœ์ž…๋‹ˆ๋‹ค.

์ตœ์‹  ๋ฒ„์ „์˜ OpenSSL๊ณผ ๊ฐ™์€ TLS ์ง€์› ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ PyPI์— ์—ฐ๊ฒฐํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ˆ˜ํ–‰ํ•ด์•ผ ํ•˜๋Š” ํŠน์ • ๋‹จ๊ณ„๋Š” Python ์„ค์น˜๊ฐ€ ์‹œ์ž‘๋œ ์šด์˜ ์ฒด์ œ ๋ฒ„์ „(python.org, OS ๊ณต๊ธ‰์—…์ฒด ๋˜๋Š” ์ค‘๊ฐ„ ๋ฐฐํฌ์ž) ๋ฐ ์„ค์น˜๋œ Python ๋ฒ„์ „, setuptools ์— ๋”ฐ๋ผ ๋‹ค๋ฆ…๋‹ˆ๋‹ค. pipenv ๋ฐ pip . ๋„์›€ ์ด ํ•„์š”ํ•˜๋ฉด Freenode์˜ #pypa IRC ์ฑ„๋„ ๋กœ ์ด๋™ํ•˜๊ฑฐ๋‚˜ pypa/packaging-problems/issues ์— ๋ฌธ์ œ๋ฅผ ์ œ์ถœํ•˜๊ฑฐ๋‚˜ python-help ๋ฉ”์ผ๋ง ๋ฆฌ์ŠคํŠธ์— ๊ฒŒ์‹œํ•˜์‹ญ์‹œ์˜ค . ์—ฌ๊ธฐ์—๋Š” OS ๋ฐ ์„ค์น˜ ์„ธ๋ถ€ ์ •๋ณด ๋ฐ pip install -vvv ์ถœ๋ ฅ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

๋‚˜๋Š” ๋˜ํ•œ macos, python 2.7.15์—์„œ ์ด๊ฒƒ์„ ๊ฒฝํ—˜ํ–ˆ์Šต๋‹ˆ๋‹ค - ์‹œ์Šคํ…œ ํŒŒ์ด์ฌ์€ ์ž˜ ์ž‘๋™ํ–ˆ๊ณ  ๊ฐ€์ƒ ํ™˜๊ฒฝ์€ ๋‹ค์Œ์œผ๋กœ ์ธํ•ด ์„ค์น˜ํ•˜์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.

pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.

๋‚ด ์‹œ์Šคํ…œ python์€ SSL์„ ์ž˜ ๊ฐ€์ ธ์™”์ง€๋งŒ venv python์€ ๋‹ค์Œ ์˜ค๋ฅ˜๋ฅผ ํ‘œ์‹œํ–ˆ์Šต๋‹ˆ๋‹ค.

raceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/Cellar/python@2/2.7.15_1/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ssl.py", line 126, in <module>
    from _ssl import HAS_SNI, HAS_ECDH, HAS_NPN, HAS_ALPN, HAS_TLSv1_3
ImportError: cannot import name HAS_TLSv1_3

env ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ์‚ญ์ œํ•˜๊ณ  env๋ฅผ ๋‹ค์‹œ ๋งŒ๋“  ํ›„ ๋ชจ๋‘ ์ œ๋Œ€๋กœ ์ž‘๋™ํ–ˆ์Šต๋‹ˆ๋‹ค.

@liurui39660 ๊ณผ ๋™์ผํ•œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์œผ๋ฉฐ Intel Python Distribution ๊ณผ python -m venv ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ venv๋ฅผ ์ƒ์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค. pip ์™€ ์•„๋ฌด ๊ด€๋ จ์ด ์—†๋Š” ssl ๋ชจ๋“ˆ์˜ ๋ฌธ์ œ์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

(venv) C:\Users\ceefour\git\tews\ecn-svc>python
Python 3.6.3 |Anaconda custom (64-bit)| (default, May  3 2018, 23:39:44) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
Intel(R) Distribution for Python is brought to you by Intel Corporation.
Please check out: https://software.intel.com/en-us/python-distribution
>>> import ssl
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\ProgramData\Anaconda3\lib\ssl.py", line 101, in <module>
    import _ssl             # if we can't import it, let the error propagate
ImportError: DLL load failed: The operating system cannot run %1.
>>>

๋ฒ„๊ทธ๋Š” venv ๋‚ด๋ถ€์—์„œ Intel Python์„ ์‚ฌ์šฉํ•  ๋•Œ๋งŒ ํŠธ๋ฆฌ๊ฑฐ๋ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ ํ™˜๊ฒฝ์„ ์‚ฌ์šฉํ•  ๋•Œ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

(base) C:\Users\ceefour>python
Python 3.6.3 |Anaconda custom (64-bit)| (default, May  3 2018, 23:39:44) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
Intel(R) Distribution for Python is brought to you by Intel Corporation.
Please check out: https://software.intel.com/en-us/python-distribution
>>> import ssl
>>> 

์—…๋ฐ์ดํŠธ: ์ด ์Šค๋ ˆ๋“œ ๊ฐ€ ๋‹จ์„œ์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

Rohit J.(Intel) 2017๋…„ 7์›” 6์ผ ๋ชฉ์š”์ผ - 21:40
pip๋Š” Windows์˜ IDP์™€ Miniconda ๋ชจ๋‘์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์—ˆ์Šต๋‹ˆ๋‹ค. ๋ฌธ์ œ๋Š” ์‹œ์Šคํ…œ ๊ฒฝ๋กœ์— ์„ค์น˜๋œ ์ถฉ๋Œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ(libeay32.dll)๋กœ ์ธํ•ด ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. ๋Ÿฐํƒ€์ž„์— ์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๋กœ๋“œํ•˜๋Š” ๊ฒƒ์ด ๋ฐฐํฌ์™€ ํ•จ๊ป˜ ์ œ๊ณต๋˜๋Š” ๊ฒƒ๋ณด๋‹ค ์šฐ์„ ํ•ฉ๋‹ˆ๋‹ค. ๋ฒ„์ „ ์ถฉ๋Œ์ด ์žˆ์—ˆ๊ณ  "๊ฐ€์ ธ์˜ค๊ธฐ ์˜ค๋ฅ˜: DLL ๋กœ๋“œ ์‹คํŒจ: ์šด์˜ ์ฒด์ œ์—์„œ %1์„(๋ฅผ) ์‹คํ–‰ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค."์™€ ํ•จ๊ป˜ ์‹คํ–‰์ด ์‹คํŒจํ•ฉ๋‹ˆ๋‹ค. ์‹œ์Šคํ…œ ๊ฒฝ๋กœ์—์„œ ์ด ๊ด€๋ จ ์—†๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์ œ๊ฑฐํ•˜๋ฉด ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

C:\ProgramData\Anaconda3\Library\bin ์ค‘ ํ•˜๋‚˜๋ฅผ ํฌํ•จํ•˜์—ฌ C:\Program Files libeay32.dll _lots_ ์žˆ์Šต๋‹ˆ๋‹ค.

C:\ProgramData\Anaconda3\Library\bin ์„ PATH ์•ž์œผ๋กœ ์ด๋™ํ•˜๋ ค๊ณ  ์‹œ๋„ํ–ˆ์ง€๋งŒ ์—ฌ์ „ํžˆ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

๋‚˜๋Š” ๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๋‹ค. ๋‚˜๋Š” python๊ณผ jupyter๋กœ aconda๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ƒˆ ์ปดํ“จํ„ฐ๋ฅผ ๊ตฌ์„ฑํ•˜๊ณ  ์žˆ์—ˆ๊ณ  ํŒจํ‚ค์ง€ ์‚ฌ์šฉ pip๋ฅผ ์„ค์น˜ํ•˜๋ ค๊ณ  ํ•  ๋•Œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.

์œ„์˜ ๋…ผ์˜๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ์ด๊ฒƒ์ด ํ™˜๊ฒฝ ๋ฌธ์ œ๋ผ๊ณ  ์ƒ๊ฐํ•˜์—ฌ cmd ๋Œ€์‹  Anaconda Prompt ์—์„œ "pip install" ๋ช…๋ น์„ ์‹คํ–‰ํ•ด ๋ณด์•˜์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  pip ๋ช…๋ น์ด ์‹คํ–‰๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๐Ÿ˜

Anaconda3์™€ ํ•จ๊ป˜ Python 3.7.1์„ ์„ค์น˜ํ•œ ํ›„ ์–ด์ œ๋ถ€ํ„ฐ ์—ฌ์ „ํžˆ ๋‹ค์Œ ์ž‘์—…์— ์–ด๋ ค์›€์„ ๊ฒช๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

pip๋Š” TLS/SSL์ด ํ•„์š”ํ•œ ์œ„์น˜๋กœ ๊ตฌ์„ฑ๋˜์ง€๋งŒ Python์˜ ssl ๋ชจ๋“ˆ์€ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
'SSLError("SSL ๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— HTTPS URL์— ์—ฐ๊ฒฐํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.")๋กœ ์ธํ•ด ์—ฐ๊ฒฐ์ด ๋Š์–ด์ง„ ํ›„ ์žฌ์‹œ๋„(Retry(total=4, connect=None, read=None, redirect=None, status=None)) ': /๋‹จ์ˆœ/ํ•/
'SSLError("SSL ๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— HTTPS URL์— ์—ฐ๊ฒฐํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.")๋กœ ์ธํ•ด ์—ฐ๊ฒฐ์ด ๋Š์–ด์ง„ ํ›„ ์žฌ์‹œ๋„(Retry(total=3, connect=None, read=None, redirect=None, status=None)) ': /๋‹จ์ˆœ/ํ•/
'SSLError("SSL ๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— HTTPS URL์— ์—ฐ๊ฒฐํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.")๋กœ ์ธํ•ด ์—ฐ๊ฒฐ์ด ๋Š์–ด์ง„ ํ›„ ์žฌ์‹œ๋„(Retry(total=2, connect=None, read=None, redirect=None, status=None)) ': /๋‹จ์ˆœ/ํ•/
'SSLError("SSL ๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— HTTPS URL์— ์—ฐ๊ฒฐํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.")๋กœ ์ธํ•ด ์—ฐ๊ฒฐ์ด ๋Š์–ด์ง„ ํ›„ ์žฌ์‹œ๋„(Retry(total=1, connect=None, read=None, redirect=None, status=None)) ': /๋‹จ์ˆœ/ํ•/
'SSLError("SSL ๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— HTTPS URL์— ์—ฐ๊ฒฐํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.")๋กœ ์ธํ•ด ์—ฐ๊ฒฐ์ด ๋Š์–ด์ง„ ํ›„ ์žฌ์‹œ๋„(Retry(total=0, connect=None, read=None, redirect=None, status=None)) ': /๋‹จ์ˆœ/ํ•/
URL https://pypi.org/simple/pip/ ๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. SSL ์ธ์ฆ์„œ๋ฅผ ํ™•์ธํ•˜๋Š” ๋ฐ ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. HTTPSConnectionPool(host='pypi.org', port=443): URL์—์„œ ์ตœ๋Œ€ ์žฌ์‹œ๋„ ํšŸ์ˆ˜๋ฅผ ์ดˆ๊ณผํ–ˆ์Šต๋‹ˆ๋‹ค: /simple/ pip/ (SSLError("SSL ๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— HTTPS URL์— ์—ฐ๊ฒฐํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.")๋กœ ์ธํ•ด ๋ฐœ์ƒ) - ๊ฑด๋„ˆ๋›ฐ๊ธฐ
์š”๊ตฌ ์‚ฌํ•ญ์ด ์ด๋ฏธ ์ตœ์‹  ์ƒํƒœ์ž…๋‹ˆ๋‹ค: d:\anaconda3\lib\site-packages(18.1)์˜ pip
pip๋Š” TLS/SSL์ด ํ•„์š”ํ•œ ์œ„์น˜๋กœ ๊ตฌ์„ฑ๋˜์ง€๋งŒ Python์˜ ssl ๋ชจ๋“ˆ์€ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
URL https://pypi.org/simple/pip/ ๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. SSL ์ธ์ฆ์„œ๋ฅผ ํ™•์ธํ•˜๋Š” ๋ฐ ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. HTTPSConnectionPool(host='pypi.org', port=443): URL์—์„œ ์ตœ๋Œ€ ์žฌ์‹œ๋„ ํšŸ์ˆ˜๋ฅผ ์ดˆ๊ณผํ–ˆ์Šต๋‹ˆ๋‹ค: /simple/ pip/ (SSLError("SSL ๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— HTTPS URL์— ์—ฐ๊ฒฐํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.")๋กœ ์ธํ•ด ๋ฐœ์ƒ) - ๊ฑด๋„ˆ๋›ฐ๊ธฐ

๋‚˜๋Š” ๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๋‹ค. willliu1995 ์ œ์•ˆ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ–ˆ์Šต๋‹ˆ๋‹ค. cmd ํ”„๋กฌํ”„ํŠธ์—์„œ pip๋ฅผ ์‹คํ–‰ํ•ด๋„ ์ž‘๋™ํ•˜์ง€ ์•Š์ง€๋งŒ jupyter notebook์„ ์‹œ์ž‘ํ•˜๊ณ  !pip install์„ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.์ผํ–ˆ๋‹ค.

pip install pandas๊ฐ€ CMD ํ”„๋กฌํ”„ํŠธ์—์„œ ์ž‘๋™ํ•˜์ง€ ์•Š์œผ๋ฉด Anaconda ํ”„๋กฌํ”„ํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‹คํ–‰ํ•˜์‹ญ์‹œ์˜ค. ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ์„ ์‚ฌ์šฉํ•˜์—ฌ Anaconda ํ”„๋กฌํ”„ํŠธ๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋งˆ์šฐ์Šค๋กœ Windows ์•„์ด์ฝ˜(์™ผ์ชฝ ํ•˜๋‹จ)์œผ๋กœ ์ด๋™ํ•˜๊ณ  "Anaconda"๋ฅผ ์ž…๋ ฅํ•˜๊ธฐ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. ์ผ์น˜ํ•˜๋Š” ํ•ญ๋ชฉ์ด ํ‘œ์‹œ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. "์•„๋‚˜์ฝ˜๋‹ค ํ”„๋กฌํ”„ํŠธ"๋ฅผ ์„ ํƒํ•˜์‹ญ์‹œ์˜ค. "Anaconda Prompt"๋ผ๋Š” ์ƒˆ ๋ช…๋ น ์ฐฝ์ด ์—ด๋ฆฝ๋‹ˆ๋‹ค. ์ถœ์ฒ˜ - https://stackoverflow.com/questions/47914980/how-to-access-anaconda-command-prompt-in-windows-10-64-bit

๋Œ€์‹  Windows ๋ช…๋ น ํ”„๋กฌํ”„ํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด Windows ํ™˜๊ฒฝ ๊ฒฝ๋กœ์— ๋‹ค์Œ ๋””๋ ‰ํ„ฐ๋ฆฌ๋ฅผ ์ถ”๊ฐ€ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
%Miniconda3_DIR%;%Miniconda3_DIR%\Library\mingw-w64\bin;%Miniconda3_DIR%\Library\usr\bin;%Miniconda3_DIR%\Library\bin;%Miniconda3_DIR%\Scripts;%Miniconda3_DIR%\bin;
[์—ฌ๊ธฐ์„œ %Miniconda3_DIR% ๋Š” Miniconda(๋˜๋Š” Anaconda) ์„ค์น˜ ๊ฒฝ๋กœ๋กœ ๋Œ€์ฒด๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.]

์˜ˆ๋ฅผ ๋“ค์–ด, E:\Portable\Miniconda3 ์— Miniconda๋ฅผ ์„ค์น˜ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋‚ด Windows PATH์—๋Š” ๋‹ค์Œ ํด๋”๊ฐ€ ํฌํ•จ๋˜์–ด์•ผ ํ–ˆ์Šต๋‹ˆ๋‹ค.
E:\Portable\Miniconda3;E:\Portable\Miniconda3\Library\mingw-w64\bin;E:\Portable\Miniconda3\Library\usr\bin;E:\Portable\Miniconda3\Library\bin;E:\Portable\Miniconda3\Scripts;E:\Portable\Miniconda3\bin;

@shriprem ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค! ๊ทธ๊ฒƒ์€ ํšจ๊ณผ๊ฐ€ ์žˆ์—ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ pip๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด PATH ๋ณ€์ˆ˜์— %Miniconda3_DIR%\Scripts๋ฅผ ์ถ”๊ฐ€ํ•˜๊ธฐ๋งŒ ํ•˜๋ฉด ๋˜๊ธฐ ๋•Œ๋ฌธ์— ์†”๋ฃจ์…˜์€ ์ด๊ฒƒ์ด ์‹œ์Šคํ…œ ๊ฒฝ๋กœ ๋ฌธ์ œ์ž„์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ๋ณ€๊ฒฝ๋œ ์ด์œ ๋ฅผ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ?

@EthanBackToLife Anaconda ํ”„๋กฌํ”„ํŠธ์—์„œ PATH ํ™˜๊ฒฝ ๋ณ€์ˆ˜๋ฅผ ํ™•์ธํ–ˆ๊ณ  Anaconda๊ฐ€ ํ•ด๋‹น ๋ชจ๋“  ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ํ”„๋กฌํ”„ํŠธ PATH ๋ณ€์ˆ˜์— ์ ‘๋‘์‚ฌ๋กœ ๋ถ™์ด๊ณ  ์žˆ์Œ์„ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ํ•ด๋‹น ๊ฒฝ๋กœ์˜ ๋ธํƒ€ ๋ถ€๋ถ„์„ Windows PATH ๋ณ€์ˆ˜์— ์ถ”๊ฐ€ํ•˜์—ฌ pip์—์„œ ์ž‘๋™ํ•˜๋Š”์ง€ ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค.

๋‹ค๋ฅธ PC์— Conda๋ฅผ ์„ค์น˜ํ•˜๋ ค๊ณ  ํ•˜๋Š” ๋™์•ˆ ๊ฒฝ๋กœ ๋ณ€๊ฒฝ์„ ํ›จ์”ฌ ๋” ์งง๊ฒŒ ์กฐ์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. %Miniconda3_DIR%;%Miniconda3_DIR%\Scripts;%Miniconda3_DIR%\Library\bin
[๋Œ์•„๋ณด๋‹ˆ ์ด์ „ ๊ฒŒ์‹œ๋ฌผ์—์„œ ๊ฒฝ๋กœ์— ์ถ”๊ฐ€๋œ ๋‹ค๋ฅธ ๋””๋ ‰ํ† ๋ฆฌ๊ฐ€ Conda๋ฅผ ์ƒˆ๋กœ ์„ค์น˜ํ•  ๋•Œ ์กด์žฌํ•˜์ง€ ์•Š๊ฑฐ๋‚˜ ๋น„์–ด ์žˆ์Œ์„ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.]

์ด๋ ‡๊ฒŒ ๊ฒฝ๋กœ๋ฅผ ์ขํžˆ๋ฉด %Miniconda3_DIR%\Library\bin ํด๋”๋ฅผ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—์„œ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํŒŒ์ผ์„ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. libcrypto-1_1-x64.dll, libcrypto-1_1-x64.pdb, libssl-1_1-x64.dll, openssl.exe, libssl-1_1-x64.pdb, openssl.pdb pip(๋ฐ conda) ํŒจํ‚ค์ง€ ์„ค์น˜์™€ ๊ด€๋ จ๋œ SSL/TLS ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐ ์ค‘์š”ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

python ๋ฒ„์ „: 3.6(Windows 2018 ์—…๋ฐ์ดํŠธ 1์šฉ Python์šฉ Intel ๋ฐฐํฌ)
virtualenv ๋ฒ„์ „: 15.1.0
Windows ๋ฒ„์ „: Windows 10 pro, ๋นŒ๋“œ 17101.rs4_release.180211-1040

2๊ฐœ์˜ ๋ช…๋ น๋งŒ ์‹คํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค. Powershell ์ถœ๋ ฅ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

PS E:\Python\Virtualenv\Scripts> .\activate
(Virtualenv) PS E:\Python\Virtualenv\Scripts> pip install numpy
pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
Collecting numpy
  Could not fetch URL https://pypi.python.org/simple/numpy/: There was a problem confirming the ssl certificate: Can't connect to HTTPS URL because the SSL module is not available. - skipping
  Could not find a version that satisfies the requirement numpy (from versions: )
No matching distribution found for numpy

Python ๋””๋ ‰ํ† ๋ฆฌ๋Š” python์ด ์„ค์น˜๋œ ๋””๋ ‰ํ† ๋ฆฌ๊ฐ€ ์•„๋‹ˆ๋ผ ์ผ๋ฐ˜ ๋””๋ ‰ํ† ๋ฆฌ์ž…๋‹ˆ๋‹ค.

here ์™€ ๊ฐ™์€ ๋…๋ฆฝํ˜• openssl์„ ์„ค์น˜ํ•˜๋ ค๊ณ  ์‹œ๋„ํ–ˆ์ง€๋งŒ ๋‘˜ ๋‹ค ์ž‘๋™ํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ๋‹น์‹ ๊ณผ ๊ฐ™์€ ์งˆ๋ฌธ์„ ๋งŒ๋‚ฌ๊ณ  .\activate ๋ช…๋ น์„ ์‚ฌ์šฉํ•˜๋ ค๊ณ  ์‹œ๋„ํ–ˆ์ง€๋งŒ ์งˆ๋ฌธ์„ ์™„๋ฒฝํ•˜๊ฒŒ ํ•ด๊ฒฐํ–ˆ์Šต๋‹ˆ๋‹ค. ๋” ์ด์ƒ ๊ฐ์‚ฌ ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

@EthanBackToLife Anaconda ํ”„๋กฌํ”„ํŠธ์—์„œ PATH ํ™˜๊ฒฝ ๋ณ€์ˆ˜๋ฅผ ํ™•์ธํ–ˆ๊ณ  Anaconda๊ฐ€ ํ•ด๋‹น ๋ชจ๋“  ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ํ”„๋กฌํ”„ํŠธ PATH ๋ณ€์ˆ˜์— ์ ‘๋‘์‚ฌ๋กœ ๋ถ™์ด๊ณ  ์žˆ์Œ์„ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ํ•ด๋‹น ๊ฒฝ๋กœ์˜ ๋ธํƒ€ ๋ถ€๋ถ„์„ Windows PATH ๋ณ€์ˆ˜์— ์ถ”๊ฐ€ํ•˜์—ฌ pip์—์„œ ์ž‘๋™ํ•˜๋Š”์ง€ ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค.

๋‹ค๋ฅธ PC์— Conda๋ฅผ ์„ค์น˜ํ•˜๋ ค๊ณ  ํ•˜๋Š” ๋™์•ˆ ๊ฒฝ๋กœ ๋ณ€๊ฒฝ์„ ํ›จ์”ฌ ๋” ์งง๊ฒŒ ์กฐ์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. %Miniconda3_DIR%;%Miniconda3_DIR%\Scripts;%Miniconda3_DIR%\Library\bin
[๋Œ์•„๋ณด๋‹ˆ ์ด์ „ ๊ฒŒ์‹œ๋ฌผ์—์„œ ๊ฒฝ๋กœ์— ์ถ”๊ฐ€๋œ ๋‹ค๋ฅธ ๋””๋ ‰ํ† ๋ฆฌ๊ฐ€ Conda๋ฅผ ์ƒˆ๋กœ ์„ค์น˜ํ•  ๋•Œ ์กด์žฌํ•˜์ง€ ์•Š๊ฑฐ๋‚˜ ๋น„์–ด ์žˆ์Œ์„ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.]

์ด๋ ‡๊ฒŒ ๊ฒฝ๋กœ๋ฅผ ์ขํžˆ๋ฉด %Miniconda3_DIR%\Library\bin ํด๋”๋ฅผ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—์„œ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํŒŒ์ผ์„ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. libcrypto-1_1-x64.dll, libcrypto-1_1-x64.pdb, libssl-1_1-x64.dll, openssl.exe, libssl-1_1-x64.pdb, openssl.pdb pip(๋ฐ conda) ํŒจํ‚ค์ง€ ์„ค์น˜์™€ ๊ด€๋ จ๋œ SSL/TLS ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐ ์ค‘์š”ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

ํ›Œ๋ฅญํ•œ ์„ค๋ช…! ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

@shriprem ์ด ์–ธ๊ธ‰ํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•œ ํ›„์—๋„ ์—ฌ์ „ํžˆ ์ด ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋„์›€์ด ๋˜๋Š” ๊ฒฝ์šฐ Python ๋ฒ„์ „ 3.7.1 ๋ฐ pip ๋ฒ„์ „ 18.1.

" ์‹œ์Šคํ…œ ํ™˜๊ฒฝ์—์„œ libeay32.dll(๋‚ด ๊ฒฝ์šฐ ..\IntelPython3\pkgs\openssl-1.0.2l-vc14_intel_0\Library\bin)์ด ์žˆ๋Š” intel-python์˜ dir ๊ฒฝ๋กœ๋ฅผ ์ตœ์ƒ์œ„ ์œ„์น˜๋กœ ์ถ”๊ฐ€ํ•˜์—ฌ ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. "

์ฐธ์กฐ: https://software.intel.com/en-us/forums/intel-distribution-for-python/topic/737878

pip๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด "Scripts" ๋””๋ ‰ํ† ๋ฆฌ์— ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

Windows 10์˜ ๊ฒฝ์šฐ CMD ํ”„๋กฌํ”„ํŠธ์—์„œ pip ์„ค์น˜๊ฐ€ ์ž‘๋™ํ•˜์ง€ ์•Š์œผ๋ฉด Anaconda ํ”„๋กฌํ”„ํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‹คํ–‰ํ•˜์‹ญ์‹œ์˜ค. ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

Anaconda ํ”„๋กฌํ”„ํŠธ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์ผ๋ฐ˜ CMD์—์„œ pip๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋Š” ๊ฒฝ์šฐ.
3๊ฐœ์˜ ํ™˜๊ฒฝ ๊ฒฝ๋กœ๋ฅผ ์ถ”๊ฐ€ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
์ด๊ฒƒ๋“ค์ฒ˜๋Ÿผ:
D:\์•„๋‚˜์ฝ˜๋‹ค3;
D:\Anaconda3\Scripts;
D:\Anaconda3\Library\bin

๋Œ€๋ถ€๋ถ„์˜ ์‚ฌ๋žŒ๋“ค์€ D:\Anaconda3\Scripts๋งŒ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

ํ™˜๊ฒฝ ์‚ฌ์šฉ์ž ๋ณ€์ˆ˜์— C:\Anaconda3\Library\bin ๊ฒฝ๋กœ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.
๋˜๋Š”
๊ธฐ๋ณธ ํŒŒ์ด์ฌ์— openssl์ด ์„ค์น˜๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.
๋‹ค์Œ ๋ช…๋ น์„ ์‚ฌ์šฉํ•˜์—ฌ ์„ค์น˜ํ•˜์ง€ ์•Š์œผ๋ฉด
ํ• ์„ค์น˜ pyopenssl

๊ฒฝ๋กœ๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ถ”๊ฐ€๋˜์—ˆ๋‹ค๊ณ  ์ƒ๊ฐํ•˜์ง€๋งŒ CMD ๋˜๋Š” Anaconda ํ”„๋กฌํ”„ํŠธ์—์„œ pip๊ฐ€ ์—ฌ์ „ํžˆ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

"Scripts" ๋””๋ ‰ํ† ๋ฆฌ์—์„œ ์‹œ๋„ํ–ˆ์Šต๋‹ˆ๊นŒ?

"Scripts" ๋””๋ ‰ํ† ๋ฆฌ์—์„œ ์‹œ๋„ํ–ˆ์Šต๋‹ˆ๊นŒ?

cd xxx/Scripts๋ฅผ ์˜๋ฏธํ•˜๊ณ  pip install์„ ์˜๋ฏธํ•œ๋‹ค๋ฉด ์ง€๊ธˆ ์‹œ๋„ํ–ˆ์ง€๋งŒ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

@SnarkyPapi , ๋‹น์‹ ์€ "๊ฒฝ๋กœ๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ถ”๊ฐ€๋˜์—ˆ๋‹ค๊ณ  ๋ฏฟ์Šต๋‹ˆ๋‹ค."๋ผ๊ณ  ๋งํ•ฉ๋‹ˆ๋‹ค. ์ด ์‚ฌ์‹ค์„ ํ™•์ธํ•˜๋ ค๋ฉด ์•„๋ž˜ ๊ตต๊ฒŒ ํ‘œ์‹œ๋œ 4๊ฐœ์˜ ๋ช…๋ น์„ ์‹คํ–‰ํ•˜์‹ญ์‹œ์˜ค.

  1. ๋ช…๋ น: > ํŒŒ์ด์ฌ์—์„œ
    ์ถœ๋ ฅ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค. _C:\Miniconda3-x64\python.exe_

  2. ๋ช…๋ น: > pip
    ์ถœ๋ ฅ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค. _C:\Miniconda3-x64\Scriptsip.exe_

  3. ๋ช…๋ น: > openssl
    ์ถœ๋ ฅ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค.
    [openssl.exe๋Š” ํ™˜๊ฒฝ ๊ฒฝ๋กœ์˜ ์—ฌ๋Ÿฌ ์œ„์น˜์— ์„ค์น˜๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ œ ๊ฒฝ์šฐ์—๋Š” openssl๋„ Perl ์„ค์น˜์˜ ์ผ๋ถ€๋กœ ์„ค์น˜๋˜์—ˆ์Šต๋‹ˆ๋‹ค.]
    _C:\Perl\c\bin\openssl.exe
    C:\Miniconda3-x64\Library\bin\openssl.exe_

  4. ๋ช…๋ น: > ์—ฌ๊ธฐ์„œ libssl-1_1-x64.dll
    ์ถœ๋ ฅ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค. _C:\Miniconda3-x64\Library\bin\libssl-1_1-x64.dll_

์ด๋“ค ์ค‘ ํ•˜๋‚˜์— ๋Œ€ํ•ด "์ •๋ณด: ์ฃผ์–ด์ง„ ํŒจํ„ด์— ๋Œ€ํ•œ ํŒŒ์ผ์„ ์ฐพ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค."๋ผ๋Š” ์ถœ๋ ฅ์ด ํ‘œ์‹œ๋˜๋ฉด pip์— ํ•„์š”ํ•œ ํ•„์ˆ˜ ๊ฒฝ๋กœ ๊ตฌ์„ฑ ์š”์†Œ ์ค‘ ํ•˜๋‚˜๊ฐ€ ํ™˜๊ฒฝ์— ๋ˆ„๋ฝ๋œ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์•ˆ๋…•ํ•˜์„ธ์š”, 4๊ฐœ์˜ ๋ช…๋ น์ด ์ž˜ ์ž‘๋™ํ–ˆ์œผ๋ฉฐ 4๋ฒˆ์งธ ๋ช…๋ น์—๋Š” 2์ค„์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.
C:\Windows\System32\libssl-1_1-x64.dll
C:\์•„๋‚˜์ฝ˜๋‹ค\๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ\bin\libssl-1_1-x64.dll

$PATH ์‹œ์ž‘ ๋ถ€๋ถ„์— "C:\Anaconda\Library\bin"์„ ๋„ฃ์œผ๋ ค๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

$PATH ์‹œ์ž‘ ๋ถ€๋ถ„์— "C:\Anaconda\Library\bin"์„ ๋„ฃ์œผ๋ ค๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.
๋ฐฉ๊ธˆ ์‹œ๋„ํ–ˆ์ง€๋งŒ ๋ฌธ์ œ๋Š” ์—ฌ์ „ํžˆ ์žˆ์Šต๋‹ˆ๋‹ค.

echo %PATH% ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

PATH๋ฅผ ๋ณ€๊ฒฝํ•  ์ƒˆ ํ„ฐ๋ฏธ๋„์„ ์—ด์—ˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋Œ€์ฒด ์†”๋ฃจ์…˜: C:\Users\my_user_namepip ์•„๋ž˜์— pip.ini ํŒŒ์ผ์„ ๋งŒ๋“ค์–ด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ž‘์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค.

[๊ธ€๋กœ๋ฒŒ]
index-url= http://pypi.douban.com/simple/
[์„ค์น˜]
์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ํ˜ธ์ŠคํŠธ=pypi.douban.com

์ž ์‹œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜์ง€๋งŒ ์ด ๋ฏธ๋Ÿฌ๋ฅผ ์‚ฌ์šฉํ•œ ๋‹ค์šด๋กœ๋“œ ์†๋„๋Š” ์‹ค์ œ๋กœ ๋น ๋ฅด์ง€ ์•Š์Šต๋‹ˆ๋‹ค(์•ฝ 800kb/s). ํ‰์†Œ์ฒ˜๋Ÿผ ์ž‘๋™ํ•˜๊ฒŒ ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๊นŒ?

echo %PATH% ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

PATH๋ฅผ ๋ณ€๊ฒฝํ•  ์ƒˆ ํ„ฐ๋ฏธ๋„์„ ์—ด์—ˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

C:\Anaconda\Library\bin;D:\Software\NVIDIA GPU Computing Toolkit\CUDA\v10.0\bin;D:\Software\NVIDIA GPU Computing Toolkit\CUDA\v10.0\libnvvp;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Program Files (x86)\Razer Chroma SDK\bin;D:\Software\Razer Chroma SDK\bin;C:\windows\system32;C:\windows ;C:\windows\System32\Wbem;C:\windows\System32\WindowsPowerShell\v1.0\;C:\windows\System32\OpenSSH\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common; D:\Software\PuTTY\;C:\windows\system32\config\systemprofile\AppData\Local\Microsoft\WindowsApps;D:\Software\dotnet\;D:\Software\MySQL\MySQL ์œ ํ‹ธ๋ฆฌํ‹ฐ 1.6\;C:\ Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;D:\Software\Git\cmd;C:\Users\Cyrilpippip.ini;C:\Anaconda;C:\ Anaconda\Library\mingw-w64\bin;C:\Anaconda\Library\usr\bin;C:\Anaconda\Scripts;C:\Anaconda\bin;C:\Anaconda\Library\bin;C:\Anaconda;C :\Anaconda\Library\mingw-w64\bin;C:\Anaconda\Library\usr\bin;C:\Anaconda\Scripts;C:\Anaconda\bin;D:\Software\D ocker ๋„๊ตฌ ์ƒ์ž;C:\Users\Cyrilpippip.ini;

SSL ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” C:\anaconda\Library\bin ํด๋”์— ์žˆ์Šต๋‹ˆ๋‹ค. ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์„ค์น˜ํ•˜๋ ค๊ณ  ํ•  ๋•Œ ํ•ด๋‹น ๊ฒฝ๋กœ๋ฅผ ์„ค์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ€์ƒ ํ™˜๊ฒฝ์„ ํ™œ์„ฑํ™”ํ•˜๋ฉด PATH๊ฐ€ ๋ณ€๊ฒฝ๋˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋ฏ€๋กœ,

  • ๊ฐ€์ƒ ํ™˜๊ฒฝ์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ ์ˆ˜๋™์œผ๋กœ PATH๋ฅผ ๋‹ค์Œ์œผ๋กœ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.
set PATH=C:\anaconda;C:\anaconda\Scripts;C:\anaconda\Library\bin
pip  install any_library
or
pip install -r requirements.txt

  • ๊ฐ€์ƒ ํ™˜๊ฒฝ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ ์ˆ˜๋™์œผ๋กœ PATH๋ฅผ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.
set PATH=C:\venvs\ve1\;C:\venvs\ve1\Scripts;C:\anaconda\Library\bin
pip  install any_library
or
pip install -r requirements.txt

C:\anaconda\Library\bin์€ VM์—์„œ ์ž‘์—…ํ•˜๋Š”์ง€ ์—ฌ๋ถ€์— ๊ด€๊ณ„์—†์ด ๋‘ ๊ฒฝ์šฐ ๋ชจ๋‘ ์ผ๊ด€๋ฉ๋‹ˆ๋‹ค.

@datatravelgit ์•ˆ๋…•ํ•˜์„ธ์š”, ์ €๋Š” ๊ฐ€์ƒ ํ™˜๊ฒฝ์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  ์žˆ์œผ๋ฉฐ ์ˆ˜๋™์œผ๋กœ ๊ฒฝ๋กœ๋ฅผ ์„ค์ •ํ•œ ํ›„์—๋„ ์—ฌ์ „ํžˆ ์ด ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

์œ„์˜ ์œ ์šฉํ•œ ์˜๊ฒฌ์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค! ๊ฒฝ๋กœ ๋ณ€์ˆ˜์— ๋‹ค์Œ์„ ์ถ”๊ฐ€ํ•˜๋ฉด Windows 10์—์„œ ์ €์—๊ฒŒ ํšจ๊ณผ์ ์ด์—ˆ์Šต๋‹ˆ๋‹ค.
C:\์‚ฌ์šฉ์ž...\์•„๋‚˜์ฝ˜๋‹ค3
C:\Users...\Anaconda3\Scripts
C:\Users...\Anaconda3\Library\bin

@liurui39660 ๊ณผ ๋™์ผํ•œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์œผ๋ฉฐ Intel Python Distribution _and_ python -m venv ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ venv๋ฅผ ์ƒ์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค. pip ์™€ ์•„๋ฌด ๊ด€๋ จ์ด ์—†๋Š” ssl ๋ชจ๋“ˆ์˜ ๋ฌธ์ œ์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

(venv) C:\Users\ceefour\git\tews\ecn-svc>python
Python 3.6.3 |Anaconda custom (64-bit)| (default, May  3 2018, 23:39:44) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
Intel(R) Distribution for Python is brought to you by Intel Corporation.
Please check out: https://software.intel.com/en-us/python-distribution
>>> import ssl
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\ProgramData\Anaconda3\lib\ssl.py", line 101, in <module>
    import _ssl             # if we can't import it, let the error propagate
ImportError: DLL load failed: The operating system cannot run %1.
>>>

๋ฒ„๊ทธ๋Š” venv ๋‚ด๋ถ€์—์„œ Intel Python์„ ์‚ฌ์šฉํ•  ๋•Œ๋งŒ ํŠธ๋ฆฌ๊ฑฐ๋ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ ํ™˜๊ฒฝ์„ ์‚ฌ์šฉํ•  ๋•Œ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

(base) C:\Users\ceefour>python
Python 3.6.3 |Anaconda custom (64-bit)| (default, May  3 2018, 23:39:44) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
Intel(R) Distribution for Python is brought to you by Intel Corporation.
Please check out: https://software.intel.com/en-us/python-distribution
>>> import ssl
>>> 

์—…๋ฐ์ดํŠธ: ์ด ์Šค๋ ˆ๋“œ ๊ฐ€ ๋‹จ์„œ์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

Rohit J.(์ธํ…”) 2017๋…„ 7์›” 6์ผ ๋ชฉ์š”์ผ - 21:40
pip๋Š” Windows์˜ IDP์™€ Miniconda ๋ชจ๋‘์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์—ˆ์Šต๋‹ˆ๋‹ค. ๋ฌธ์ œ๋Š” ์‹œ์Šคํ…œ ๊ฒฝ๋กœ์— ์„ค์น˜๋œ ์ถฉ๋Œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ(libeay32.dll)๋กœ ์ธํ•ด ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. ๋Ÿฐํƒ€์ž„์— ์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๋กœ๋“œํ•˜๋Š” ๊ฒƒ์ด ๋ฐฐํฌ์™€ ํ•จ๊ป˜ ์ œ๊ณต๋˜๋Š” ๊ฒƒ๋ณด๋‹ค ์šฐ์„ ํ•ฉ๋‹ˆ๋‹ค. ๋ฒ„์ „ ์ถฉ๋Œ์ด ์žˆ์—ˆ๊ณ  "๊ฐ€์ ธ์˜ค๊ธฐ ์˜ค๋ฅ˜: DLL ๋กœ๋“œ ์‹คํŒจ: ์šด์˜ ์ฒด์ œ์—์„œ %1์„(๋ฅผ) ์‹คํ–‰ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค."์™€ ํ•จ๊ป˜ ์‹คํ–‰์ด ์‹คํŒจํ•ฉ๋‹ˆ๋‹ค. ์‹œ์Šคํ…œ ๊ฒฝ๋กœ์—์„œ ์ด ๊ด€๋ จ ์—†๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์ œ๊ฑฐํ•˜๋ฉด ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

C:\ProgramData\Anaconda3\Library\bin ์ค‘ ํ•˜๋‚˜๋ฅผ ํฌํ•จํ•˜์—ฌ C:\Program Files libeay32.dll _lots_ ์žˆ์Šต๋‹ˆ๋‹ค.

C:\ProgramData\Anaconda3\Library\bin ์„ PATH ์•ž์œผ๋กœ ์ด๋™ํ•˜๋ ค๊ณ  ์‹œ๋„ํ–ˆ์ง€๋งŒ ์—ฌ์ „ํžˆ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
----------ๆ›ดๆ–ฐ๏ผš20190327
ๅˆš ๅˆš ๆฅ ๆฅ ๆฅ ไบ†, ็‚น ่ฟ›ๆฅ ๆ‰ ๆ‰ ไบ† ๆ˜ฏ ้—ฎ้ข˜, ่ฟ™ไธช ๅŽๆฅ ๆ‰ ่งฃๅ†ณ ไบ† ไบ† ็‚น ๅŽๆฅ ๅŽๆฅ ens ไบ† ไบ†.

-------------ไปฅไธ‹ไธบๆ—งๅ†…ๅฎน่ฐข่ฐข๏ผŒๆˆ‘ๆ˜จๅคฉไนŸ้‡ๅˆฐไบ†็›ธๅŒ็š„้—ฎ้ข˜๏ผŒ็„ถๅŽๆˆ‘ๆŠŠAnacondaๅธ่ฝฝๅŽ้‡่ฃ…ไบ†๏ผŒไฝ†ๅนฃๆฒกๆ‰ง่กŒimport ssl๏ผŒanacondaไธญ็š„ๆŠฅ้”™๏ผŒๅฆๅค–ไธ€ไธชไธๆŠฅ้”™ใ€‚ๅฆ‚ๅ›พ๏ผš
GitHub Logo
ๆˆ‘ๆŠŠpycharmไธญ็š„่ทฏๅพ„ไฟฎๆ”นๅŽ๏ผŒpycharmไนŸๅฏไปฅๆญฃๅธธ่ฟ่กŒไบ†ใ€‚

๋‚ด envs/myenv/Library/bin ํด๋”์˜ libssl-1_1-x64.dll์„ ๊ธฐ๋ณธ env dll๋กœ ๊ต์ฒดํ•ด์•ผ ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ๊ฐ™์€ ๊ฒƒ์ด ์•„๋‹ˆ ์—ˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ C:/Windows/System32/ ๋ฐ C:/Program Files์˜ ํŠน์ • Intel ํด๋” ์•„๋ž˜์— ๋‹ค๋ฅธ libssl-1_1-x64.dll์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฒฝ๋กœ์—์„œ Intel ํ•ญ๋ชฉ์„ ์ œ๊ฑฐํ•˜๊ณ  system32 ์•„๋ž˜์— ์žˆ๋Š” ํ•ญ๋ชฉ์„ ์‚ญ์ œํ–ˆ์Šต๋‹ˆ๋‹ค.

์†์ƒ๋œ dll์ด ์–ธ์ œ ๋ณต์‚ฌ๋˜์—ˆ๋Š”์ง€ ํ™•์‹คํ•˜์ง€ ์•Š์ง€๋งŒ conda/Library/bin/์— ์žˆ๋Š” ๊ฒƒ์œผ๋กœ ๊ต์ฒดํ•˜๋ฉด ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

์˜ค๋ฅ˜๋ฅผ ์ถ”๊ฐ€๋กœ ํ™•์ธํ•˜๋ ค๋ฉด ํ™˜๊ฒฝ์„ ํ™œ์„ฑํ™”ํ•˜๊ณ  python -c "import ssl" ๋ฅผ ์ž…๋ ฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ค๋ฅ˜๊ฐ€ "๋ชจ๋“ˆ์„ ์ฐพ์„ ์ˆ˜ ์—†์Œ"(-> dll์„ ์ „ํ˜€ ์ฐพ์„ ์ˆ˜ ์—†์Œ, ๊ฒฝ๋กœ ๋ฌธ์ œ์ผ ์ˆ˜ ์žˆ์Œ) ๋˜๋Š” "์ ˆ์ฐจ ์ง„์ž…์ ์„ ์ฐพ์„ ์ˆ˜ ์—†์Œ"(-> ์†์ƒ/์ž˜๋ชป๋œ dll์ด ๋ฐœ๊ฒฌ๋˜์—ˆ์„ ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ์Œ)์ธ ๊ฒฝ์šฐ ์ค‘์š”ํ•œ ์ฐจ์ด์ž…๋‹ˆ๋‹ค. ).

๋‚ด envs/myenv/Library/bin ํด๋”์˜ libssl-1_1-x64.dll์„ ๊ธฐ๋ณธ env dll๋กœ ๊ต์ฒดํ•ด์•ผ ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ๊ฐ™์€ ๊ฒƒ์ด ์•„๋‹ˆ ์—ˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ C:/Windows/System32/ ๋ฐ C:/Program Files์˜ ํŠน์ • Intel ํด๋” ์•„๋ž˜์— ๋‹ค๋ฅธ libssl-1_1-x64.dll์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฒฝ๋กœ์—์„œ Intel ํ•ญ๋ชฉ์„ ์ œ๊ฑฐํ•˜๊ณ  system32 ์•„๋ž˜์— ์žˆ๋Š” ํ•ญ๋ชฉ์„ ์‚ญ์ œํ–ˆ์Šต๋‹ˆ๋‹ค.

์†์ƒ๋œ dll์ด ์–ธ์ œ ๋ณต์‚ฌ๋˜์—ˆ๋Š”์ง€ ํ™•์‹คํ•˜์ง€ ์•Š์ง€๋งŒ conda/Library/bin/์— ์žˆ๋Š” ๊ฒƒ์œผ๋กœ ๊ต์ฒดํ•˜๋ฉด ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

์˜ค๋ฅ˜๋ฅผ ์ถ”๊ฐ€๋กœ ํ™•์ธํ•˜๋ ค๋ฉด ํ™˜๊ฒฝ์„ ํ™œ์„ฑํ™”ํ•˜๊ณ  python -c "import ssl" ๋ฅผ ์ž…๋ ฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ค๋ฅ˜๊ฐ€ "๋ชจ๋“ˆ์„ ์ฐพ์„ ์ˆ˜ ์—†์Œ"(-> dll์„ ์ „ํ˜€ ์ฐพ์„ ์ˆ˜ ์—†์Œ, ๊ฒฝ๋กœ ๋ฌธ์ œ์ผ ์ˆ˜ ์žˆ์Œ) ๋˜๋Š” "์ ˆ์ฐจ ์ง„์ž…์ ์„ ์ฐพ์„ ์ˆ˜ ์—†์Œ"(-> ์†์ƒ/์ž˜๋ชป๋œ dll์ด ๋ฐœ๊ฒฌ๋˜์—ˆ์„ ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ์Œ)์ธ ๊ฒฝ์šฐ ์ค‘์š”ํ•œ ์ฐจ์ด์ž…๋‹ˆ๋‹ค. ).

๋™์ผํ•œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. "์ง€์ •ํ•œ ์ ˆ์ฐจ๋ฅผ ์ฐพ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค." - ํŠน์ • ํ™˜๊ฒฝ์—์„œ๋งŒ.
๊ธฐ๋ณธ ํ™˜๊ฒฝ์—์„œ "import ssl"์ด ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

ํ™˜๊ฒฝ์˜ libssl-1_1-x64.dll ์„ ๊ธฐ๋ณธ ํ™˜๊ฒฝ์˜ libssl-1_1-x64.dll๋กœ ๊ต์ฒดํ•˜๋ ค๊ณ  ์‹œ๋„ํ–ˆ์ง€๋งŒ ๋„์›€์ด ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค .
์ด ๋ฌธ์ œ๋ฅผ ์ผ์œผํ‚ค๋Š” ๋‹ค๋ฅธ ํŒŒ์ผ์ด ์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

๋ชจ๋“  ์‚ฌ๋žŒ์˜ ์˜๊ฒฌ์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค.
์ถ”๊ฐ€ํ•ด๋„ ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.\Anaconda3\Library\bin ๊ฒฝ๋กœ ๋˜๋Š” ๊ฒฝ๋กœ์˜ ๋งจ ์œ„์— ์žˆ์Šต๋‹ˆ๋‹ค. \Anaconda3\Scripts ๋ฐ \Anaconda3\Library\mingw-w64\bin์— ๋Œ€ํ•ด์„œ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์ž…๋‹ˆ๋‹ค.

ํ™˜๊ฒฝ์˜ libssl-1_1-x64.dll ์„ ๊ธฐ๋ณธ ํ™˜๊ฒฝ์˜ libssl-1_1-x64.dll๋กœ ๊ต์ฒดํ•˜๋ ค๊ณ  ์‹œ๋„ํ–ˆ์ง€๋งŒ ๋„์›€์ด ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค .
์ด ๋ฌธ์ œ๋ฅผ ์ผ์œผํ‚ค๋Š” ๋‹ค๋ฅธ ํŒŒ์ผ์ด ์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

C:/Windows/System32/์—์„œ libssl-1_1-x64.dll๊ณผ libcrypto-1_1-x64.dll ์„ ๋ชจ๋‘ ์ œ๊ฑฐํ•˜๋ฉด ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์‚ฌ๋ž‘ํ•ด ์นœ๊ตฌ!
C:/Windows/System32/์—์„œ libssl-1_1-x64.dll๊ณผ libcrypto-1_1-x64.dll์„ ๋ชจ๋‘ ์ œ๊ฑฐํ•˜๋ฉด ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

Win64OpenSSL_Light-1_1_1b.exe https://slproweb.com/download/Win64OpenSSL_Light-1_1_1b.exe ๋ฅผ ์„ค์น˜ํ•˜๋ฉด pip๊ฐ€ ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

์‚ฌ์šฉํ•ด๋ณด์‹ญ์‹œ์˜ค:

pip3 install <package>

์ด ๋ฌธ์ œ๋Š” ์ด PC๋ฅผ ํ†ตํ•ด ๊ฒฝ๋กœ๋ฅผ ๋ณ€๊ฒฝํ•˜์—ฌ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์†์„ฑ์œผ๋กœ ์ด๋™
๊ทธ๋Ÿฐ ๋‹ค์Œ ๊ณ ๊ธ‰ ์„ค์ •์œผ๋กœ ์ด๋™
๊ทธ๋Ÿฐ ๋‹ค์Œ ํ™˜๊ฒฝ ๋ณ€์ˆ˜
๊ทธ๋Ÿฐ ๋‹ค์Œ ์‹œ์Šคํ…œ ๋ณ€์ˆ˜
๋‹ค์Œ ๊ฒฝ๋กœ
๋”๋ธ” ํด๋ฆญ ๊ฒฝ๋กœ
์„ค์น˜๋œ ํŒŒ์ด์ฌ์˜ ๊ฒฝ๋กœ ํ™•์ธ
์•„๋‚˜์ฝ˜๋‹ค๊ฐ€ ์žˆ๋‹ค๋ฉด
๊ทธ๋Ÿฐ ๋‹ค์Œ ๋‘ ๊ฒฝ๋กœ๋ฅผ ๋ชจ๋‘ ์‚ญ์ œํ•˜๊ณ 
๊ทธ๋Ÿฐ ๋‹ค์Œ ์ƒˆ๋กœ ๋งŒ๋“ค๊ธฐ๋ฅผ ํด๋ฆญ
๊ทธ๋Ÿฐ ๋‹ค์Œ python 3.7 ๋˜๋Š” ์ตœ์‹  python til ์Šคํฌ๋ฆฝํŠธ์˜ ๊ฒฝ๋กœ๋ฅผ ๋ณต์‚ฌํ•ฉ๋‹ˆ๋‹ค.
(C:\Users\'์‚ฌ์šฉ์ž ์ด๋ฆ„'\AppData\Local\ProgramsPythonPython37\scripts)
๊ทธ๋Ÿฐ ๋‹ค์Œ ํ™•์ธ์„ ํด๋ฆญ
๋‹ค์Œ๋„ ์ƒˆ๋กœ ๋งŒ๋“ค๊ธฐ๋ฅผ ํด๋ฆญํ•˜์‹ญ์‹œ์˜ค.
๊ทธ๋Ÿฐ ๋‹ค์Œ C:\Users\'user name'\AppData\Local\ProgramsPythonPython37 ๊ฒฝ๋กœ๋ฅผ ๋ณต์‚ฌํ•ฉ๋‹ˆ๋‹ค.
๊ทธ๋Ÿฐ ๋‹ค์Œ cmd๋ฅผ ๊ด€๋ฆฌ์ž๋กœ ๋‹ค์‹œ ์‹œ์ž‘ํ•˜๊ณ  ์„ค์น˜๋ฅผ ๋‹ค์‹œ ์‹œ๋„ํ•˜์‹ญ์‹œ์˜ค.

์žฌ๋ฏธ์žˆ๋Š” ์ : Android, Termux์—์„œ๋„ ๋™์ผํ•œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. SSL ๋ถ€์žฌ๋กœ ์ธํ•ด ํ•์ด pypi.org์— ์—ฐ๊ฒฐํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
๋ฌธ์ œ๋Š” ๋ถ„๋ช…ํžˆ ssl ๋ชจ๋“ˆ์— ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ฒ˜์Œ์— SSL์ด ์„ค์น˜๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค. ๊ทธ๋ ‡๋‹ค๋ฉด SSL ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ๋น ๋ฅด๊ฒŒ ๋ฐœ์ „ํ•˜๊ณ  ํ˜ธํ™˜๋˜์ง€ ์•Š์œผ๋ฏ€๋กœ ์ตœ์‹  ๋ฒ„์ „์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜์‹ญ์‹œ์˜ค.
๊ธฐ์กด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์—…๋ฐ์ดํŠธํ•˜๊ฑฐ๋‚˜ ๋” ๋‚˜์€ ์ง€์› ํŒจํ‚ค์ง€๋ฅผ ์„ค์น˜ํ•˜์‹ญ์‹œ์˜ค.

Windows์˜ Anaconda/Miniconda ์‚ฌ์šฉ์ž์˜ ๊ฒฝ์šฐ ์ด๊ฒƒ์€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋กœ๋“œ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. https://conda.io/projects/conda/en/latest/user-guide/troubleshooting.html#condahttperror -http-000-connection-failed์˜ ๋ฌธ์ œ ํ•ด๊ฒฐ FAQ์— ์ •๋ณด๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

์ผ๋ถ€ ์‚ฌ์šฉ์ž๊ฐ€ ์–ธ๊ธ‰ํ–ˆ๋“ฏ์ด Windows\System32 ํด๋”์— ๋‹ค๋ฅธ openssl์„ ์„ค์น˜ํ•˜๋Š” ๊ฒƒ์€ ๋งค์šฐ ๋ฒˆ๊ฑฐ๋กœ์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ด€๋ จ ๋ฌธ์ œ ํ•ด๊ฒฐ ์„น์…˜์— Anaconda(๋ฐ conda-forge) python์˜ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์ •๋ณด๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. https://conda.io/projects/conda/en/latest/user-guide/troubleshooting.html#numpy -mkl-library- ๋กœ๋“œ ์‹คํŒจ

https://github.com/continuumio/anaconda-issues ์—์„œ ์•„๋‚˜์ฝ˜๋‹ค ๋ฌธ์ œ๋ฅผ ๋ณด๊ณ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

pip ๋ชจ๋“ˆ ์„ค์น˜์—์„œ SSL ๋ฌธ์ œ๊ฐ€ ์žฌ๋ฐœํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ ์ „์—๋Š” 3๊ฐœ์˜ conda ํด๋” %Conda_DIR%;%Conda_DIR%\Scripts;%Conda_DIR%\Library\bin ๋ฅผ ํฌํ•จํ•˜๋„๋ก ํ™˜๊ฒฝ ๊ฒฝ๋กœ๋ฅผ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ๊ตฌ์„ฑํ•œ ํ›„ pip๊ฐ€ ๋ช‡ ๋‹ฌ ๋™์•ˆ ์ œ๋Œ€๋กœ ์ž‘๋™ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋ช‡ ์‹œ๊ฐ„ ๋™์•ˆ์˜ ๋…ผ์Ÿ ๋์— ๋‚˜๋Š” pip ๋ฅผ ํ†ตํ•œ ๋ชจ๋“ˆ ์„ค์น˜์™€ conda ๋ฅผ ํ†ตํ•œ ๋ชจ๋“ˆ ์„ค์น˜์˜ ๋‘ ๊ฐ€์ง€ ์†”๋ฃจ์…˜์— ๋„๋‹ฌํ–ˆ์Šต๋‹ˆ๋‹ค.

pip๋ฅผ ํ†ตํ•œ ๋ชจ๋“ˆ ์„ค์น˜

๊ธฐ๋ณธ์ ์œผ๋กœ ์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€์— ๋”ฐ๋ผ pypi.org ๋ฐ files.pythonhosted.org ์‚ฌ์ดํŠธ๋ฅผ ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ํ˜ธ์ŠคํŠธ๋กœ ์ถ”๊ฐ€ํ•ด์•ผ ํ–ˆ์Šต๋‹ˆ๋‹ค.

pip config set global.trusted_host "pypi.org files.pythonhosted.org" ๋ฅผ ํ†ตํ•ด ์ด ์ž‘์—…์„ ํ•œ ๋ฒˆ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์ด ์„ค์ • ๋ณ€๊ฒฝ์€ C:\Users\user_name\Appdata\Roaming\pip\pip.ini (์ค„์—ฌ์„œ %APPDATA%\pip\pip.ini ) ํŒŒ์ผ์— ์ €์žฅ๋ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ Windows ๊ด€์ ์—์„œ ๊ด€๋ฆฌ์ž๊ฐ€ ์•„๋‹Œ ์‚ฌ์šฉ์ž ํด๋”์— ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๊ทธ๋ ‡๊ฒŒ ํ•˜๋Š” ๊ฒƒ์ด ์•ˆ์ „ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

['์ „์—ญ' ์„ค์ • ๋ณ€๊ฒฝ์ด ๋งˆ์Œ์— ๋“ค์ง€ ์•Š์œผ๋ฉด ๋ชจ๋“ˆ์„ ์„ค์น˜ํ•  ๋•Œ๋งˆ๋‹ค ์ด ์ž‘์—…์„ ๋ฐ˜๋ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์˜ˆ: pip install --trusted-host pypi.org --trusted-host files.pythonhosted.org -U matplotlib ]

conda๋ฅผ ํ†ตํ•œ ๋ชจ๋“ˆ ์„ค์น˜

basemap๊ณผ ๊ฐ™์€ ์ผ๋ถ€ Python ๋ชจ๋“ˆ์€ pip๋ฅผ ํ†ตํ•ด ์„ค์น˜๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋Œ€์‹  conda๋ฅผ ์‚ฌ์šฉํ•ด์•ผํ–ˆ์Šต๋‹ˆ๋‹ค.
conda๋กœ SSL ์˜ค๋ฅ˜๋ฅผ ๋ฌด์‹œํ•˜๋ ค๋ฉด conda config --set ssl_verify false ๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ–ˆ์Šต๋‹ˆ๋‹ค.

[conda ๋ชจ๋“ˆ ์„ค์น˜ ํ›„ conda config --set ssl_verify true ๋กœ SSL์„ ๋‹ค์‹œ ์ผฐ์Šต๋‹ˆ๋‹ค. ]

์˜ค๋Š˜ ์ด๋Ÿฌํ•œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋™์•ˆ https://conda.io/projects/conda/en/latest/user-guide/troubleshooting.html#ssl -connection-errors์˜ ์ผ๋ฐ˜ ์ •๋ณด ๋ฐ ์„ค์น˜ ์‹œ๊ฐ„ ์˜ค๋ฅ˜์˜ ํŠน์ • ์‚ฌ์ดํŠธ ์ •๋ณด ๋ฉ”์‹œ์ง€ -- ๋‘˜ ๋‹ค ๋„์›€์ด ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์•ˆ๋…•ํ•˜์„ธ์š” ์•„๋‚˜์ฝ˜๋‹ค ํ”„๋กฌํ”„ํŠธ์—์„œ TSL/SSL ๋ฌธ์ œ๋กœ ์ธํ•ด pip๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์„ ๋•Œ:

(base) C:\Users\joshu>pip install pandahouse
WARNING: pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.

๊ทธ๋Ÿฌ๋‚˜ ํŒŒ์ด์ฌ ๋„ค์ดํ‹ฐ๋ธŒ๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ ์›ํ•˜๋Š” ๊ฒƒ์„ pip ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

C:\Users\joshu\AppData\Local\Programs\Python\Python37\Scripts>pip install scrapy
Collecting scrapy
  Downloading http....

๋‚ด๊ฐ€ ์ง€๊ธˆ๊นŒ์ง€ ํ•œ ์ผ:

  1. ๋จผ์ € ํŒŒ์ด์ฌ์„ ์„ค์น˜ํ–ˆ์Šต๋‹ˆ๋‹ค
  2. ์„ค์น˜๋œ ์•„๋‚˜์ฝ˜๋‹ค
  3. ์žฌ์„ค์น˜๋œ ์•„๋‚˜์ฝ˜๋‹ค
  4. System32/์—์„œ libcrypto-1_1-x64.dll ๋ฐ libssl-1_1-x64.dll์„ ์ œ๊ฑฐํ–ˆ์Šต๋‹ˆ๋‹ค.
  5. ๋‚ด Anaconda ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ PATH์˜ ์ตœ์ƒ์œ„ ์‹œ์Šคํ…œ ๋ฐ ์‚ฌ์šฉ์ž ๋ณ€์ˆ˜์— ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
    C:\Users\joshu\Anaconda3\Library\bin
  6. ์—ฌ์ „ํžˆ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค

๋„ค์ดํ‹ฐ๋ธŒ Python์˜ CMD ํ”„๋กฌํ”„ํŠธ ์œ„์น˜:

C:\Users\joshu\AppData\Local\Programs\Python\Python37\Scripts>where libssl-1_1-x64.dll
C:\Users\joshu\Anaconda3\Library\bin\libssl-1_1-x64.dll

C:\Users\joshu\AppData\Local\Programs\Python\Python37\Scripts>where libcrypto-1_1-x64.dll
C:\Users\joshu\Anaconda3\Library\bin\libcrypto-1_1-x64.dll

์•„๋‚˜์ฝ˜๋‹ค ํ”„๋กฌํ”„ํŠธ ์œ„์น˜:

(base) C:\Users\joshu>where libssl-1_1-x64.dll
C:\Users\joshu\Anaconda3\Library\bin\libssl-1_1-x64.dll

(base) C:\Users\joshu>where libcrypto-1_1-x64.dll
C:\Users\joshu\Anaconda3\Library\bin\libcrypto-1_1-x64.dll

์ด๊ฒƒ์ด ์ค‘์š”ํ•œ์ง€ ํ™•์‹คํ•˜์ง€ ์•Š์ง€๋งŒ OPENSSL_CONF C:\OpenSSL-Win64\bin\openssl.cfg๊ฐ€ ๋‚ด ์‹œ์Šคํ…œ ๋ณ€์ˆ˜์˜ PATH ์œ„์— ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.

๋ˆ„๊ตฐ๊ฐ€ ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ž˜ ๋ชจ๋ฅด๊ฒ ๊ณ  ๊ธฐ๋ณธ ํŒŒ์ด์ฌ ๋Œ€์‹  Anaconda/Spyder๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์„ ์„ ํ˜ธํ•ฉ๋‹ˆ๋‹ค.

@jmhcodes , ์ด ๋งํฌ๋ฅผ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค: https://stackoverflow.com/questions/41328451/ssl-module-in-python-is-not-available-when-installing-package-with-pip3

๋˜ํ•œ stackoverflow์—์„œ ์ง์žฅ PC์—์„œ ์ง๋ฉดํ•˜๊ธฐ ์‹œ์ž‘ํ•œ SSL ์ธ์ฆ์„œ ํ™•์ธ ์˜ค๋ฅ˜์˜ ๊ฐ‘์ž‘์Šค๋Ÿฌ์šด ์žฌ๋ฐœ๊ณผ ๋” ๊ด€๋ จ์ด ์žˆ๋Š” ๋˜ ๋‹ค๋ฅธ ํ† ๋ก ์„ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค. ํ† ๋ก  ๋งํฌ: https://stackoverflow.com/questions/25981703/pip-install-fails-with-connection-error-ssl-certificate-verify-failed-certi

๊ทธ ๋‹ต๋ณ€ ์ค‘ ๋ช‡ ๊ฐœ์—๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ง„์ˆ ์ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

์ œ ๊ฒฝ์šฐ์—๋Š” ํšŒ์‚ฌ ๋„คํŠธ์›Œํฌ์˜ ์ธ์ฆ์„œ๊ฐ€ ๋ฌธ์ œ์˜€์Šต๋‹ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ 

SSL ํŠธ๋ž˜ํ”ฝ์„ ํ•„ํ„ฐ๋งํ•  ์ˆ˜ ์žˆ๋„๋ก ์ž์ฒด ์ธ์ฆ ๊ธฐ๊ด€์„ ์‚ฌ์šฉํ•˜๋Š” ํšŒ์‚ฌ์˜ ์›น ์ฝ˜ํ…์ธ  ํ•„ํ„ฐ ๋•Œ๋ฌธ์— ์ตœ๊ทผ์— ์ด ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ ์ œ ๊ฒฝ์šฐ์—๋Š” ํšŒ์‚ฌ ๋„คํŠธ์›Œํฌ ๋ฐฉํ™”๋ฒฝ์ด ์ œ ํ•์„ ๊นจ๋œจ๋ ธ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ files.pythonhosted.org & ** pypi.org ๋ฅผ ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ํ˜ธ์ŠคํŠธ๋กœ ์ถ”๊ฐ€ํ•˜๋ฉด ํ˜„์žฌ ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์†”์งํžˆ, ๋‚˜๋Š” ์ง€๋‚œ ์ฃผ์— ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ณ  ์—ฌ๊ธฐ์— ๋‚ด ์†”๋ฃจ์…˜ ๋‹จ๊ณ„๋ฅผ ๊ฒŒ์‹œํ–ˆ์„ ๋•Œ ๋‘ ๋ฒˆ์งธ stackoverflow ํ† ๋ก ์„ ๋ณด์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค. stackoverflow ๊ธฐ์‚ฌ์˜ ๋Œ€๋ถ€๋ถ„์˜ ์‘๋‹ต์€ --trusted-host ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด pip ๋ฌธ์ œ๋„ ํ•ด๊ฒฐ๋œ๋‹ค๋Š” ๋ฐ ๋™์˜ํ•ฉ๋‹ˆ๋‹ค. ์œ„์—์„œ ์–ธ๊ธ‰ํ•œ ๋‘ ์‚ฌ์ดํŠธ ์™ธ์—๋„ pypi.python.org ๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

@shriprem

@jmhcodes , ์ด ๋งํฌ๋ฅผ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค: https://stackoverflow.com/questions/41328451/ssl-module-in-python-is-not-available-when-installing-package-with-pip3

๋˜ํ•œ stackoverflow์—์„œ ์ง์žฅ PC์—์„œ ์ง๋ฉดํ•˜๊ธฐ ์‹œ์ž‘ํ•œ SSL ์ธ์ฆ์„œ ํ™•์ธ ์˜ค๋ฅ˜์˜ ๊ฐ‘์ž‘์Šค๋Ÿฌ์šด ์žฌ๋ฐœ๊ณผ ๋” ๊ด€๋ จ์ด ์žˆ๋Š” ๋˜ ๋‹ค๋ฅธ ํ† ๋ก ์„ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค. ํ† ๋ก  ๋งํฌ: https://stackoverflow.com/questions/25981703/pip-install-fails-with-connection-error-ssl-certificate-verify-failed-certi

์ด ๋‘ ๊ฒŒ์‹œ๋ฌผ๋„ ๋ณด์•˜๊ณ  ๊ธ€๋กœ๋ฒŒ ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ํ˜ธ์ŠคํŠธ๋กœ ์ถ”๊ฐ€ํ•˜๊ณ  ๋– ๋‚  ์ˆ˜ ์žˆ์ง€๋งŒ ๊ทธ๋ ‡๊ฒŒ ํ•  ๋งŒํผ ํŽธ์•ˆํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋‚ด๊ฐ€ ์ •๋ง๋กœ ๋Œ€๋‹ตํ•˜๋ ค๋Š” ๊ฒƒ์€ cmd ๋ผ์ธ์˜ ๊ธฐ๋ณธ ํŒŒ์ด์ฌ ํŒจํ‚ค์ง€ ๋‚ด์—์„œ SSL/TSL ๋ฌธ์ œ ์—†์ด pip๊ฐ€ ์ž‘๋™ํ•˜์ง€๋งŒ openssl/libssl-1_1-x64.dll/libcrypto-1_1-x64์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  ์•„๋‚˜์ฝ˜๋‹ค ํ”„๋กฌํ”„ํŠธ์—์„œ ์ž‘๋™ํ•˜์ง€ ์•Š๋Š” ์ด์œ ์ž…๋‹ˆ๋‹ค. .dll์€ ๋ชจ๋‘ ๊ฐ™์€ ์œ„์น˜๋ฅผ ๊ฐ€๋ฆฌํ‚ต๋‹ˆ๋‹ค.

@jmhcodes , ์ผ๋ฐ˜ ๋ช…๋ น ํ”„๋กฌํ”„ํŠธ์™€ Anaconda ํ”„๋กฌํ”„ํŠธ ๋ชจ๋‘์—์„œ where pip.exe ๋ช…๋ น์„ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. ๋‘˜ ๋‹ค pip.exe์— ๋Œ€ํ•ด ๋™์ผํ•œ ๊ฒฝ๋กœ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๊นŒ?

๋‹ค์Œ์€ Anaconda ํ”„๋กฌํ”„ํŠธ๊ฐ€ ์ผ๋ฐ˜ ๋ช…๋ น ํ”„๋กฌํ”„ํŠธ์— ๋น„ํ•ด ํ™˜๊ฒฝ์— ๊ฐ€์ ธ์˜ค๋Š” ๋ช‡ ๊ฐ€์ง€ ์ฐจ์ด์ ์ž…๋‹ˆ๋‹ค.

  1. Anaconda๋Š” ์ผ๋ฐ˜ ํ™˜๊ฒฝ ๊ฒฝ๋กœ์˜ ๋งจ ์•ž์— ํ•˜์œ„ ๋””๋ ‰ํ† ๋ฆฌ 7๊ฐœ๋ฅผ ์ ‘๋‘์‚ฌ๋กœ ๋ถ™์ž…๋‹ˆ๋‹ค. ๋‘ ํ™˜๊ฒฝ ๋‚ด์—์„œ echo %path% ๋ช…๋ น์„ ์‹คํ–‰ํ•˜๊ณ  ๋น„๊ตํ•˜์—ฌ ์ด๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 7๊ฐœ์˜ ํ•˜์œ„ ๋””๋ ‰ํ† ๋ฆฌ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.
    %CONDA_DIR%; %CONDA_DIR%\Library\mingw-w64\bin; %CONDA_DIR%\Library\usr\bin; %CONDA_DIR%\Library\bin; %CONDA_DIR%\Scripts; %CONDA_DIR%\bin; %CONDA_DIR%\condabin;

_ ์ฐธ๊ณ  : %CONDA_DIR%๋Š” Anaconda ์„ค์น˜ ๊ฒฝ๋กœ๋กœ ๋Œ€์ฒด๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค._

  1. Anaconda๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ƒˆ๋กœ์šด ํ™˜๊ฒฝ ๋ณ€์ˆ˜๋„ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค.
    CONDA_DEFAULT_ENV, CONDA_EXE, CONDA_PREFIX, CONDA_PROMPT_MODIFIER, CONDA_PYTHON_EXE, CONDA_SHLVL, PYTHONIOENCODING, PROJ_LIB, _CONDA_SET_PROJ_LIB
    ๋‘ ํ™˜๊ฒฝ์—์„œ set ๋ช…๋ น์„ ์‹คํ–‰ํ•˜๊ณ  ๋น„๊ตํ•˜์—ฌ ์ด๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‘ ํ™˜๊ฒฝ ๊ฐ„์˜ ์ด๋Ÿฌํ•œ ์ฐจ์ด์ ์œผ๋กœ ์ธํ•ด ๋ฐœ์ƒํ•œ ๋ฌธ์ œ๊ฐ€ ๋ฌด์—‡์ด๋“  ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋” ํŒŒ๊ณ  ๋“œ๋Š” ๊ฒƒ์€ ๋‹น์‹ ์—๊ฒŒ ๋‹ฌ๋ ค ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜ pip.exe๊ฐ€ ๋‘ ํ™˜๊ฒฝ์˜ ๋™์ผํ•œ ๋ฐ”์ด๋„ˆ๋ฆฌ๋ฅผ ๊ฐ€๋ฆฌํ‚ค๋Š” ๊ฒฝ์šฐ pip๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•˜๋Š” ํ™˜๊ฒฝ์— ๋Œ€ํ•ด ํฌ๊ฒŒ ๊ฑฑ์ •ํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ๋งค์šฐ ์ž˜ ์•Œ๋ ค์ง„ python.org pip ์‚ฌ์ดํŠธ๋ฅผ ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ํ˜ธ์ŠคํŠธ๋กœ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์— ๋Œ€ํ•ด ๋„ˆ๋ฌด ๊ฑฑ์ •ํ•˜์ง€ ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. stackoverflow์—์„œ ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์ด ๊ทธ๋žฌ์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ๋‚ด 2 ์„ผํŠธ์ž…๋‹ˆ๋‹ค.

๋งˆ์ง€๋ง‰์œผ๋กœ ๋‹ค์Œ์„ ์–ธ๊ธ‰ํ–ˆ์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์ด ์ค‘์š”ํ•œ์ง€ ํ™•์‹คํ•˜์ง€ ์•Š์ง€๋งŒ OPENSSL_CONF C:\OpenSSL-Win64\bin\openssl.cfg๊ฐ€ ๋‚ด ์‹œ์Šคํ…œ ๋ณ€์ˆ˜์˜ PATH ์œ„์— ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.

์•ŒํŒŒ๋ฒณ ์ˆœ์„œ๋กœ ๋‚˜์—ด๋  ๋•Œ ์‹œ์Šคํ…œ ๋ณ€์ˆ˜ OPENSSL_CONF๊ฐ€ PATH ์•ž์— ์˜ค๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๊ท€ํ•˜๊ฐ€ ๊ฒช๊ณ  ์žˆ๋Š” ๋ฌธ์ œ์— ๋Œ€ํ•ด์„œ๋Š” ์ค‘์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์•„๋‹ˆ๋ฉด ๋‚ด๊ฐ€ ๋‹น์‹ ์ด ๋งํ•œ ๊ฒƒ์„ ์ž˜๋ชป ํ•ด์„ ํ–ˆ์Šต๋‹ˆ๊นŒ?

์•„๋‚˜์ฝ˜๋‹ค ํ”„๋กฌํŠธ
pip 19.1.1 from C:\ProgramData\Anaconda3\lib\site-packages\pip (python 3.7)

๋ช…๋ น ํ”„๋กฌํ”„ํŠธ
C:\Users\joshu\AppData\Local\Programs\Python\Python37\Scripts\pip.exe

๊ทธ๋Ÿฌ๋‚˜ spyder/anaconda nav ๋˜๋Š” anaconda ํ”„๋กฌํ”„ํŠธ ์ด์™ธ์˜ anaconda ์ œํ’ˆ๊ตฐ๊ณผ ๊ด€๋ จ๋œ ๋‹ค๋ฅธ ํ•ญ๋ชฉ๋„ ์—ด ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

(base) C:\Users\joshu>spyder.exe
Traceback (most recent call last):
  File "C:\ProgramData\Anaconda3\lib\site-packages\spyder\utils\external\github.py", line 51, in <module>
    from urllib2 import build_opener, HTTPSHandler, Request, HTTPError
ModuleNotFoundError: No module named 'urllib2'

์œ„์˜ ์˜ˆ์™ธ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋™์•ˆ ๋‹ค๋ฅธ ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.

Traceback (most recent call last):
  File "C:\ProgramData\Anaconda3\lib\site-packages\spyder\app\mainwindow.py", line 3285, in main
    mainwindow = run_spyder(app, options, args)
  File "C:\ProgramData\Anaconda3\lib\site-packages\spyder\app\mainwindow.py", line 3140, in run_spyder
    main.setup()
  File "C:\ProgramData\Anaconda3\lib\site-packages\spyder\app\mainwindow.py", line 809, in setup
    from spyder.plugins.console import Console
  File "C:\ProgramData\Anaconda3\lib\site-packages\spyder\plugins\console.py", line 37, in <module>
    from spyder.widgets.reporterror import SpyderErrorDialog
  File "C:\ProgramData\Anaconda3\lib\site-packages\spyder\widgets\reporterror.py", line 26, in <module>
    from spyder.widgets.github.backend import GithubBackend
  File "C:\ProgramData\Anaconda3\lib\site-packages\spyder\widgets\github\backend.py", line 33, in <module>
    from spyder.utils.external import github
  File "C:\ProgramData\Anaconda3\lib\site-packages\spyder\utils\external\github.py", line 58, in <module>
    from urllib.request import build_opener, HTTPSHandler, HTTPError, Request
ImportError: cannot import name 'HTTPSHandler' from 'urllib.request' (C:\ProgramData\Anaconda3\lib\urllib\request.py)

์ €๋Š” Visual Studio Code๋กœ ์ž‘์—…ํ•˜๊ณ  ๋™์ผํ•œ ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ํ™œ์„ฑ conda virtual env๊ฐ€ ์•„๋‹ˆ์—ˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

imagen

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰