如何查找根本原因:urllib2.URLError:<urlopen error[SSL:CERTIFICATE\u VERIFY_FAILED]CERTIFICATE VERIFY FAILED(_SSL.c:590)?

2024-09-28 01:33:38 发布

您现在位置:Python中文网/ 问答频道 /正文

当我在网页中输入我的API密钥https://breezometer.com/api/时,我试图测试breezometer.com.的API,它返回预期的JSON回复。在

但是,输入完全相同的数据-在下面的python脚本中模拟web请求(来自python 2和python 3):

$ cat test2.py
#!/usr/bin/env python

"""
Location from Google Maps: https://www.google.co.il/maps/place/Haifa+Port,+Haifa/@32.8267212,34.9852862,15z/data=!4m2!3m1!1s0x151dbbcd3a79ff47:0x8d20ff1e4833b549?hl=en

request: https://api.breezometer.com/baqi/?lat=32.8267212&lon=34.9852862&key=API_KEY
"""

from bs4 import BeautifulSoup
import urllib2

latitude = 32.8267212
longitude = 34.9852862
api_key = "XXXXXfb123e242839edeb10539dXXXXX"

url = "https://api.breezometer.com/baqi/?lat={0}&lon={1}&key={2}".format(latitude, longitude, api_key)

print(BeautifulSoup(urllib2.urlopen(url)))

我得到:

^{pr2}$

我看过类似的SO线程(例如,Python 'requests' [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590)等来自https://stackoverflow.com/search?q=_ssl.c%3A590+CERTIFICATE_VERIFY_FAILED

我已经将https://breezometer.com/api/https://breezometer.com/证书(以所有可用的格式)导入到Chrome中,遵循https://stackoverflow.com/a/31627786/1656850建议:但是,我仍然收到证书验证失败错误。在

如何调试此问题有何建议?


Tags: keyfromhttpsimportcomapiurllib2lon

热门问题