Brew Python3.7安装在Mac High OSierra 10.13.6上。帮助了解openssl安装说明

时间:2018-09-15 18:42:14

标签: python macos ssl openssl homebrew

我在安装python时遇到问题,并不断收到openssl错误。所以我已经重新安装了无数次,但仍然很挣扎。我认为我没有正确遵循以下指示,希望有人可以解释我该怎么做。在过去的3周中,我已经在线阅读了有关openssl错误的所有内容,并且几乎已经是精疲力尽了。如果我不明白这一点,我很可能会放弃学习编程。

我能够使用pip3安装软件包。但是,如果我需要访问网页,则会出错。我收到的错误示例:

pip3安装了geopy,但在下面运行时会产生一个巨大的错误,我将其包括在下面:

import geopy
geocoder=geopy.geocoders.GoogleV3(domain="maps.google.co.uk")
geocoder.geocode('Cambridge', exactly_one=False)
  

'[SSL:CERTIFICATE_VERIFY_FAILED]证书验证失败:证书链中的自签名证书(_ssl.c:1045)'

我可以安装pandas和pandas_datareader,但是在下面运行会引发错误,其最后一部分如下代码所示:

import datetime as dt
import matplotlib.pyplot as plt
from matplotlib import style
import pandas as pd
import pandas_datareader.data as web
style.use('ggplot')
start = dt.datetime(2000,1,1)
end = dt.datetime(2016,12,31)
df = web.DataReader('TSLA', 'yahoo', start, end)
  

文件send中的文件“ /usr/local/lib/python3.7/site-packages/requests/adapters.py”,第511行       引发SSLError(e,request = request)   requests.exceptions.SSLError:HTTPSConnectionPool(host ='finance.yahoo.com',port = 443):URL超过了最大重试次数:/ quote / TSLA / history?period1 = 946699200&period2 = 1483243199&interval = 1d&frequency = 1d&filter = history(由引起SSLError(SSLCertVerificationError(1,'[[SSL:CERTIFICATE_VERIFY_FAILED]证书验证失败:证书链中的自签名证书(_ssl.c:1045)')))

因此,我需要确切地了解通过brew安装python 3.7后要采取的步骤,如下所述。

  1. 我是否需要添加其他证书,并将.pem文件放置在certs目录中?什么时候,为什么需要这样的动作?
  2. 如果问题1的答案为是,我是否仅需要运行c_rehash?
  3. 我的路径上需要首先拥有openssl吗?
  4. 我需要编译器来找到openssl吗?在什么情况下我应该按规定设置LDFLAGS和CPPFLAGS?
  5. 我需要pkg-config来找到openssl吗?

基本上,我是python初学者,如果我只想使用pip3安装软件包并能够安全地在线访问数据和网站,则不确定我需要这些东西中的多少。

  

$ brew install openssl   正在更新自制软件...   ==>正在下载https://homebrew.bintray.com/bottles/openssl-1.0.2p.high_sierra。   已下载:/Users/user/Library/Caches/Homebrew/downloads/f3b0a441f330cc1e6072080557f91b61256c8b0734e8348563d0efcb2af248ce--openssl-1.0.2p.high_sierra.bottle.tar.gz   ==>浇筑openssl-1.0.2p.high_sierra.bottle.tar.gz   ==>注意事项   已使用SystemRoots的证书自举了CA文件   钥匙扣。添加其他证书(例如,添加到   系统钥匙串),将.pem文件放入     / usr / local / etc / openssl / certs

     

然后运行     / usr / local / opt / openssl / bin / c_rehash

     

openssl仅适用于小桶,这意味着它没有符号链接到/ usr / local,   因为苹果已经弃用OpenSSL,而是使用自己的TLS和加密库。

     

如果您需要先在运行的PATH中打开openssl:     echo'export PATH =“ / usr / local / opt / openssl / bin:$ PATH”'>>〜/ .bash_profile

     

为使编译器找到openssl,您可能需要设置:     export LDFLAGS =“-L / usr / local / opt / openssl / lib”     export CPPFLAGS =“-I / usr / local / opt / openssl / include”

     

要让pkg-config查找openssl,您可能需要设置:     导出PKG_CONFIG_PATH =“ / usr / local / opt / openssl / lib / pkgconfig”

     

==>摘要     /usr/local/Cellar/openssl/1.0.2p:1,793个文件,12.3MB

0 个答案:

没有答案