requests.exceptions.SSLError: [SSL: SSLV3_ALERT_HANDSHAKE_FAILURE] sslv3 ๊ฒฝ๊ณ ํธ๋์ ฐ์ดํฌ ์คํจ(_ssl.c:600)
ํฐ๋ฏธ๋์ openssl ๋ฒ์ ์ ๋ณ๊ฒฝํ์ต๋๋ค.
kingw angdeMini:icampuslist_web kingwang$ openssl ๋ฒ์
OpenSSL 1.0.2d 2015๋
7์ 9์ผ
ํ์ง๋ง ๋ด ํ์ด์ฌ์ openssl ๋ฒ์ ์ ์ฌ์ ํ โโ์ด์ ๋ฒ์ ์ ๋๋ค:
kingw angdeMini:icampuslist_web kingwang$ python -c "ssl ๊ฐ์ ธ์ค๊ธฐ; ์ธ์(ssl.OPENSSL_VERSION)"
OpenSSL 0.9.8zg 2015๋
7์ 14์ผ
[SSL: SSLV3_ALERT_HANDSHAKE_FAILURE] ์ ๋ฒ๊ทธ๊ฐ ๋ฒ์ ์ค๋ฅ ๋๋ฌธ์ด๋ผ๋ ๊ฒ์ ์๊ณ ์์ต๋๋ค.
ํ์ด์ฌ์ openssl ๋ฒ์ ์ ๋ณ๊ฒฝํ๋ ๋ฐฉ๋ฒ์ ์๊ณ ์ถ์ต๋๋ค~
๊ฐ์ฌ ํด์!
Python์ OpenSSL ๋ฒ์ ์ ์ปดํ์ผ ๋์์
๋๋ค. ์ด ๊ฒฝ์ฐ Mac OS X์ ๊ฒฝ์ฐ ์ Python์ ์ง์ ์ปดํ์ผํด์ผ ํฉ๋๋ค. ๊ฐ์ฅ ์ฌ์ด ๋ฐฉ๋ฒ์ Homebrew ๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์
๋๋ค. brew install python
๋ ๋ณด๋ค ํ๋์ ์ธ OpenSSL์ด ํฌํจ๋ ์๋ก์ด Python์ ์ ๊ณตํฉ๋๋ค.
๋ํ pip install pyasn1 ndg-httpsclient pyopenssl
๋ฅผ ์คํํ์ฌ ๋ฒ๊ทธ๋ฅผ ์ง์ ์์ ํ ์๋ ์์ต๋๋ค. ๊ทธ๋ฌ๋ฉด Requests๋ง ์ฌ์ฉํ ์ ์๋ ์ต์ OpenSSL๋ ์ ๊ณต๋ฉ๋๋ค.
์ด๊ฒ์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ์ฒ์์ผ๋ก github์ ์ฌ์ฉํฉ๋๋ค.
@๋ฃจ์นด์ฌ
๊ฐ์ฌํฉ๋๋ค! ์ด์ ๋ด ๋ฒ๊ทธ๊ฐ ํด๊ฒฐ๋์์ต๋๋ค.
pyenv๋ฅผ ์ฌ์ฉํ์ฌ ํ์ด์ฌ์ ์คํํฉ๋๋ค. ํ์ด์ฌ์ ์ ๊ฑฐํ ๋ค์ ๋ค์ ์ค์นํฉ๋๋ค. ์๋ ์ค์ ๋๋ค! ๋๋ฌด ํ๋ณตํด~~
๊ทธ๊ฑด ๊ทธ๋ ๊ณ , ๋๋ ๋จผ์ ๋ ๋ฒ์งธ ๋ฐฉ๋ฒ์ ์๋ํ์ง๋ง ์๋ํ์ง ์์ต๋๋ค. ๊ทธ๋ฐ ๋ค์ ์ฒซ ๋ฒ์งธ ๊ฒ์ ์๋ํ์ต๋๋ค.์ด์ ๋ฅผ ๋ชฐ๋์ต๋๋ค. ์ด์ฉ๋ฉด ์ด๋ฏธ ํด๋น ํจํค์ง๋ฅผ ์ค์นํ์ ์๋ ์์ต๋๋ค.
๋ง์ง๋ง์ผ๋ก, ๋๋จํ ๊ฐ์ฌํฉ๋๋ค!
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
Python์ OpenSSL ๋ฒ์ ์ ์ปดํ์ผ ๋์์ ๋๋ค. ์ด ๊ฒฝ์ฐ Mac OS X์ ๊ฒฝ์ฐ ์ Python์ ์ง์ ์ปดํ์ผํด์ผ ํฉ๋๋ค. ๊ฐ์ฅ ์ฌ์ด ๋ฐฉ๋ฒ์ Homebrew ๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ ๋๋ค.
brew install python
๋ ๋ณด๋ค ํ๋์ ์ธ OpenSSL์ด ํฌํจ๋ ์๋ก์ด Python์ ์ ๊ณตํฉ๋๋ค.๋ํ
pip install pyasn1 ndg-httpsclient pyopenssl
๋ฅผ ์คํํ์ฌ ๋ฒ๊ทธ๋ฅผ ์ง์ ์์ ํ ์๋ ์์ต๋๋ค. ๊ทธ๋ฌ๋ฉด Requests๋ง ์ฌ์ฉํ ์ ์๋ ์ต์ OpenSSL๋ ์ ๊ณต๋ฉ๋๋ค.