Используя запросы, чтобы сделать несколько тысяч запросов get для sourceforge, получите «Максимальное количество попыток превышено с помощью URL»

Я очень новичок во всем этом; Мне нужно получить данные о нескольких тысячах проектов sourceforge для статьи, которую я пишу. Все данные свободно доступны в формате json по адресу http://sourceforge.net/api/project/name/[project name] / json. У меня есть список из нескольких тысяч этих URL-адресов, и я использую следующий код.

import grequests
rs = (grequests.get(u) for u in ulist)
answers = grequests.map(rs)

Используя этот код, я могу получить данные для любых 200 или около того проектов, которые мне нравятся, т.е.rs = (grequests.get(u) for u in ulist[0:199]) работает, но как только я перейду, все попытки встретятся

ConnectionError: HTTPConnectionPool(host='sourceforge.net', port=80): Max retries exceeded with url: /api/project/name/p2p-fs/json (Caused by <class 'socket.gaierror'>: [Errno 8] nodename nor servname provided, or not known)
<Greenlet at 0x109b790f0: <bound method AsyncRequest.send of <grequests.AsyncRequest object at 0x10999ef50>>(stream=False)> failed with ConnectionError

После этого я не могу делать больше запросов, пока не выйду из python, но как только я перезапущу python, я смогу сделать еще 200 запросов.

Я пытался использоватьgrequests.map(rs,size=200) но это, похоже, ничего не делает.

Ответы на вопрос(2)

Ваш ответ на вопрос