url10 = 'http://ipv4.download.thinkbroadband.com/10MB.zip'
urls = [url5, url5, url10, url10, url10, url5, url5]

def fetch(url):
    response = bytearray()
with Timeout(60, False):
    response = urllib.request.urlopen(url).read()
return url, len(response)
pool = eventlet.GreenPool()
for url, length in pool.imap(fetch, urls):
    if not length:
        print('%s: timeout!' % url)
else:
    print('%s: %s' % (url, length))
How to perform time limited response download with python requests?