下载图片时无法捕获 urllib 404 错误
Unable to catch urllib 404 Error when downloading images
运行 python 3 使用此代码,我终生无法捕获此 404 错误。如果未找到图像,则 urllib.error.HTTPError: HTTP Error 404: Not Found
在
dl_image = urllib.request.urlretrieve(cam_url, "thumbnail" + str(1 + img_num[0]) + ".jpg")
:
import requests
# import json
# import re
import random
import urllib
def random_cam(img_num=[0]):
cam_url = url + camera_IDs[img_num[0]] + trailing_url
dl_image = urllib.request.urlretrieve(cam_url, "thumbnail" + str(1 + img_num[0]) + ".jpg")
if img_num == [0]: # makes sure to only shuffle camera order once to avoid duplicate camera thumbnails
random.shuffle(camera_rand)
try:
dl_image
except urllib.error.HTTPError:
print ("image not found or camera is offline")
img_num[0] += 2 # skip over index that throws an error and download next image in line
dl_image
else:
print (cam_url)
img_num[0] += 1
return img_num[0]
错误发生在
dl_image = urllib.request.urlretrieve(cam_url, "thumbnail" + str(1 + img_num[0]) + ".jpg")
只需将 try
语句放在该行之前
运行 python 3 使用此代码,我终生无法捕获此 404 错误。如果未找到图像,则 urllib.error.HTTPError: HTTP Error 404: Not Found
在
dl_image = urllib.request.urlretrieve(cam_url, "thumbnail" + str(1 + img_num[0]) + ".jpg")
:
import requests
# import json
# import re
import random
import urllib
def random_cam(img_num=[0]):
cam_url = url + camera_IDs[img_num[0]] + trailing_url
dl_image = urllib.request.urlretrieve(cam_url, "thumbnail" + str(1 + img_num[0]) + ".jpg")
if img_num == [0]: # makes sure to only shuffle camera order once to avoid duplicate camera thumbnails
random.shuffle(camera_rand)
try:
dl_image
except urllib.error.HTTPError:
print ("image not found or camera is offline")
img_num[0] += 2 # skip over index that throws an error and download next image in line
dl_image
else:
print (cam_url)
img_num[0] += 1
return img_num[0]
错误发生在
dl_image = urllib.request.urlretrieve(cam_url, "thumbnail" + str(1 + img_num[0]) + ".jpg")
只需将 try
语句放在该行之前