#python-3.x #python-requests
#python-3.x #python-запросы
Вопрос:
Я хочу получить 1 миллион записей из одного URL REST API с разбиением на страницы. Каждая страница может получить до 100 тыс. записей примерно за 1 минуту. Я хочу сделать 10 запросов на публикацию одновременно, чтобы я мог получить все 1 миллион записей за 1 минуту. Я использовал библиотеку запросов ThreadPoolExecutor для одновременного подключения и получения данных, но получение данных занимает очень много времени.
Мое понимание aiohttp или grequests заключается в том, что они вызывают REST API асинхронно из одного потока и получают данные, ожидая, пока другие установят сетевые подключения.
Пример кода
def post_request(page_number):
response = requests.post(url, data = data, fetchPageNumber:page_number)
# logic to convert response.text pandas df and write to RDBMS
with concurrent.futures.ThreadPoolExecutor(10) as executor:
parallel_response = executor.map(post_requst, list(1,11)
Пожалуйста, дайте мне знать, каков наилучший способ параллельного получения данных с разбивкой на страницы.
Комментарии:
1. Я в ужасе от того, как люди могут проголосовать за такой запутанный вопрос, который показывает пробелы в понимании во многих измерениях. Для придания смысла этому требуется гораздо больше внимания