这里的问题是我的代码通常使用try
except
语句检查库中是否存在正确的库。但在最近,我注意到如果我打开:
fd = urllib.urlretrieve(url, os.path.join(out_directory, filename + file_type))
我收到了attribute
错误,但我也收到了错误消息:
AttributeError: 'module' object has no attribute 'urlretrieve'
During handling of the above exception, another exception occurred:
urllib.error.HTTPError: HTTP Error 403: Forbidden
但是,如果我尝试使用以下代码更正属性错误:
fd = urllib.request.urlretrieve(url, os.path.join(out_directory, filename + file_type))
尽管网址相同,但我没有得到同样的403错误。然而,似乎url无法读取,因为我没有写入输出文件。所以看起来它是403问题,但没有错误信息。
所以要修复403,我怎样才能轻松地将标题添加到urlretrieve调用中?为什么错误处理不同?