我是靠谱客的博主 老实唇膏,最近开发中收集的这篇文章主要介绍python3 urllib.request程序崩溃,python - urllib.request.urlopen(URL)在python3中不起作用 - 堆栈内存溢出...,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

我正在尝试使用urllib.request.urlopen访问JSON。 当我在python2中使用urllib2而不是urllib.request.urlopen时,它工作正常。

URL = 'https://api.exchangeratesapi.io/latest'

f = urllib.request.urlopen(URL)

Traceback (most recent call last):

File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/urllib/request.py", line 1316, in do_open

encode_chunked=req.has_header('Transfer-encoding'))

File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/http/client.py", line 1229, in request

self._send_request(method, url, body, headers, encode_chunked)

File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/http/client.py", line 1275, in _send_request

self.endheaders(body, encode_chunked=encode_chunked)

File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/http/client.py", line 1224, in endheaders

self._send_output(message_body, encode_chunked=encode_chunked)

File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/http/client.py", line 1016, in _send_output

self.send(msg)

File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/http/client.py", line 956, in send

self.connect()

File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/http/client.py", line 1391, in connect

server_hostname=server_hostname)

File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/ssl.py", line 415, in wrap_socket

_session=session

File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/ssl.py", line 826, in __init__

self.do_handshake()

File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/ssl.py", line 1080, in do_handshake

self._sslobj.do_handshake()

File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/ssl.py", line 701, in do_handshake

self._sslobj.do_handshake()

ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:864)

在处理上述异常期间,发生了另一个异常:

Traceback (most recent call last):

File "a1.py", line 19, in

print(getLatestRates())

File "a1.py", line 15, in getLatestRates

f = urllib.request.urlopen(URL)

File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/urllib/request.py", line 222, in urlopen

return opener.open(url, data, timeout)

File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/urllib/request.py", line 525, in open

response = self._open(req, data)

File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/urllib/request.py", line 543, in _open

'_open', req)

File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/urllib/request.py", line 503, in _call_chain

result = func(*args)

File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/urllib/request.py", line 1359, in https_open

context=self._context, check_hostname=self._check_hostname)

File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/urllib/request.py", line 1318, in do_open

raise URLError(err)

urllib.error.URLError:

最后

以上就是老实唇膏为你收集整理的python3 urllib.request程序崩溃,python - urllib.request.urlopen(URL)在python3中不起作用 - 堆栈内存溢出...的全部内容,希望文章能够帮你解决python3 urllib.request程序崩溃,python - urllib.request.urlopen(URL)在python3中不起作用 - 堆栈内存溢出...所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(44)

评论列表共有 0 条评论

立即
投稿
返回
顶部