Как продолжить скачивание следующего файла (python библиотека wget), если скачивание одного из файлов зависает?

Я скачиваю все файлы с сайта, но у меня скачивание на каком нибудь файле зависает. Как можно пропустить скачивание текущего файла и перейти к следующему? Данный скрипт может загрузить все сто документов (pdf, doc, excel, zip), а может зависнуть на первом же.

import wget
import requests
from requests.packages.urllib3.exceptions import InsecureRequestWarning
import time
import ssl

requests.packages.urllib3.disable_warnings(InsecureRequestWarning)
ssl._create_default_https_context = ssl._create_unverified_context

def test():
    url_num = 1000
    for i in range(1, 100):
        url = 'http:site.com/files/download_file/{}'.format(url_num)
        url_num += i
        r = requests.get(url, verify=ssl.CERT_NONE)
        if r.status_code == 200:
            try:
                wget.download(url)
                time.sleep(0.1)
                print(f'Документ {i} скачан')
            except:
                   continue
    print('Все документы загружены.')

введите сюда описание изображения


Ответы (1 шт):

Автор решения: Рамис

Вариант 1, использовать requests

import requests

r = requests.get('http:site.com/files/download_file/file.pdf', timeout=10, stream=True)
with open('file.pdf', 'wb') as fh:
    for chunk in r.iter_content(1024):
        fh.write(chunk)

Вариант 1, eventlet

https://stackoverflow.com/questions/13573146/how-to-perform-time-limited-response-download-with-python-requests

→ Ссылка