Как минимум, я советую распараллелить потоки, если позволяют ядра процессора и пропускная способность сети. Не уверен, что смогу найти код, но писал скрипт, позволяющий с одного портала скачивать картинки по определенному диапазону url-адресов. Распараллеливание действительно помогло.
UPD.
Нашел код, за его работоспособность относительно текущего сервиса не ручаюсь, но "честно, все работало".
https://pastebin.com/grFejrjR
Там много лишнего кода, не относящегося к задаче. Как минимум, там есть смена прокси и их чек, списки которых я выгружал с бесплатных сайтов и в онлайн режиме чекал. И лишняя "красота" в виде цветастого аутпута. Да, это те самые картинки, которые кто-то выгружает через прогу "Lightshot" :)