Если вы используете Python3, urllib.request.urlopen
имеет параметр timeout .Вы можете использовать это так:
import urllib.request as request
try:
response = request.urlopen('http://google.com',timeout = 0.001)
print(response)
except request.URLError as err:
print('got here')
# urllib.URLError: <urlopen error timed out>
timeout
измеряется в секундах.Приведенное выше сверхкороткое значение просто для демонстрации того, что оно работает.Конечно, в реальной жизни вы, вероятно, захотите установить большее значение.
urlopen
также повышает urllib.error.URLError
(который также доступен как request.URLError
)если URL не существует или ваша сеть не работает.
Для Python2.6 + эквивалентный код может быть найден здесь .