#python #urlopen
#python #urlopen
Вопрос:
Я использую команду urlopen из пакета urllib.request, и она работает правильно.
Но поскольку он находится внутри бесконечного цикла, я хочу рассмотреть возможные условия «Нет сети». Я не хочу, чтобы мой код ломался из-за этой ошибки.
Я попробовал функцию ниже, но она не работает:
def update():
try:
cmd = 'getUpdates'
resp = urlopen(URL cmd)
line = aux_dec2utf8(resp)
upds = json.loads(line)
NoM = len(upds['result'])
except ValueError:
print('NO NETWORK')
return NoM, upds
Комментарии:
1. Вы имели в виду:
except UrlError:
?2. Я этого не понял
3. Чего вы не получили?
4. вы хотите изменить «except ValueError:» на «except URLError:» ?
5. Спасибо, это решено
Ответ №1:
Я думаю, что проблема здесь в исключении ValueError. Возможно, вы захотите настроить исключение для urllib.HTTPError и / или urllib.URLError для обнаружения ошибки, которую вы пытаетесь предотвратить от нарушения вашего скрипта.
ValueError используется для перехвата недопустимого аргумента и не может быть причиной прерывания потока.