urlopen失败,urlretrieve起作用

时间:2018-10-27 23:07:43

标签: python python-3.x

我正在使用Python 3.7.0从数千个URL中检索并保存favicon.ico文件,其中一些是错误的。为了提高效率,我尝试使用以下代码在尝试检索图像之前测试每个URL:

url_parts = urlparse(url)
status_code = urllib.request.urlopen(url_parts.scheme + "://" + url_parts.netloc).getcode()

如果返回的status_code为2xx,则我致电:

urllib.request.urlretrieve(url_parts.scheme + "://" + url_parts.netloc + "/favicon.ico", local_path)

local_path是先前为网站图标分配的唯一路径\名称(此位置并不总是存在于网站上,但是在这种情况下,代码可以正常恢复)。奇怪的是,urlretrieve总是在站点存在时起作用,但是urlopen经常(但不总是)为同一站点抛出异常。

有人知道为什么urlopen有时会失败,或者如何创建有效的测试吗?

0 个答案:

没有答案