/ / python urllib2.URLError за обработка - python, urllib2

python urllib2.URLError за обработка - python, urllib2

Извличам жива емисия от уеб страница в json. Страниците се актуализират всяка минута, за да извличам данните всяка минута. Но сървърът на тази уеб страница понякога не е много стабилен и моят код спира да работи. Искам да го напиша по такъв начин, че моят код непрекъснато ще изисква данни, докато не го получи. Някой е написал нещо подобно преди:

try:
f=urllib2.open(blablabla...)

except urllib2.HTTPError, detail:
if detail.error == 500:
time.sleep(1)
continue
else:
raise

Но кодът ми все още спира да работи с тази грешка: urllib2.URLError: urlopen error [Errno 8] nodename или servname предоставени или неизвестни

Отговори:

1 за отговор № 1

urllib2.HTTPError е подтип на urllib2.URLError, Така че, когато open повдига един URLError, всъщност не го улавяте, когато търсите HTTPErrorс. Ако искате да хванете URLErrorсъщо, добавете още един except клауза, с която да се справя.