Python使用FancyURLopener,ssl异常违反p

2024-10-02 16:28:47 发布

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

请参考以下代码:

from six.moves.urllib.request import FancyURLopener

class ParanoidURLopener(FancyURLopener):
     def http_error_default(self, url, fp, errcode, errmsg, headers):
         raise Exception('URL fetch failure on {}: {} -- {}'.format(url, errcode, errmsg))

ParanoidURLopener().retrieve("https://s3.amazonaws.com/img-datasets/mnist.pkl.gz", "a.pkl.gz")

我明白

^{pr2}$

我四处搜索,在SO上找到了this问题,但这是一个非常老的bug,似乎已经修复了(这个问题中的代码对我很有用)。在

PS_1:代码取自Keras source codePS_2:这是this问题的重点版本

编辑1

这些错误只发生在这个文件上。在

如果我打开一个pdf文件,它会完美地工作。在

>>> ParanoidURLopener().retrieve("http://anh.cs.luc.edu/python/hands-on/3.1/Hands-onPythonTutorial.pdf", "a.pdf")
('a.pdf', <http.client.HTTPMessage object at 0x7f623da36128>)

有了这个,它也起作用了

>>> ParanoidURLopener().retrieve("http://yann.lecun.com/exdb/mnist/t10k-labels-idx1-ubyte.gz", "a.gz")
('a.gz', <http.client.HTTPMessage object at 0x7f623da36860>)

Tags: 代码comhttpurlpdfonthisretrieve