Алекс прав: mechanize.urlopen
принимает аргумент timeout
.Поэтому просто введите число секунд в плавающей точке : mechanize.urlopen('http://url/', timeout=30.0)
.
Фон из источника mechanize.urlopen
:
def urlopen(url, data=None, timeout=_sockettimeout._GLOBAL_DEFAULT_TIMEOUT):
...
return _opener.open(url, data, timeout)
mechanize._sockettimeout._GLOBAL_DEFAULT_TIMEOUT
спросите вы?Это просто настройка модуля socket
.
import socket
try:
_GLOBAL_DEFAULT_TIMEOUT = socket._GLOBAL_DEFAULT_TIMEOUT
except AttributeError:
_GLOBAL_DEFAULT_TIMEOUT = object()