Извините за беспокойство, а можно уточнить один момент по поводу строчки
xhr.open('GET', 'https://cors-anywhere.herokuapp.com/'+arr[0]);
У меня нет задачи парсить картинки с чужих сайтов. Мне нужно скачать картинки с просматриваемой страницы в браузере. Это как в контекстном меню браузера (если вызвать его на изображении) пункт "Сохранить картинку как...". Только у меня уже есть массив нужных мне изображений которые нужно скачать.
Для решения такой задачи обязательно нужно делать запрос
xhr.open('GET', 'https://cors-anywhere.herokuapp.com/'+arr[0]);
Прочитал что у этого сервера есть ограничения и его могут ложить.
P.S. Я на сайте когда ещё не знал HTML и правила оптимизации наделал кучу однотипных косяков. Теперь написал скрипт который находит эти ошибки при просмотре страниц. Просто скачивать по одной картинке через контекстное меню долго, нудно и можно пропустить.