Очень медленные ответы PrivatBank API

Задача получить данные с API PrivatBank, по курсу валют с 2014 года по текущую дату. Ответы возвращаются в XML, отрываю целыми страницами и кладу в .txt, за 10 мин всего один месяц сложил. Помогите разобраться пожалуйста, это ограничения на сервере или мой код слишком ограничен.

Вот код:

    import requests
        from bs4 import BeautifulSoup
        from mod_file import date_for_links


        def get_html(url):
            r = requests.get(url)
            return r


        def get_total_pages(html):  # суп
            soup = BeautifulSoup(html, 'lxml')
            s = soup.exchangerates
            return s


        def main():  # главная функция
            arr_date = date_for_links()  # функция из файла mod_file,
            # которая генерирует список ссылок
            in_file = open("C:/Users/11/Desktop/PB_API/file_new.txt", "w")
            for URL in arr_date:  # цикл распаковки списка ссылок
                html = get_html(URL)
                get_total_pages(html.text)
                in_file.write(html.text)


        main()

вот второй файл

    from datetime import date, timedelta

        url = 'https://api.privatbank.ua/p24api'
        host = '/exchange_rates?date='


        # url + host + day.strftime('%d.%m.%Y') - собранная ссылка


        def date_for_links():  # функция для генерации списка ссылок
            arr_date = []  # список для всех ссылок
            old_date = date(2014, 12, 1)  # начальная дата
            new_date = date.today()  # текущая дата
            delta_days = new_date - old_date  # дельта
            for i in range(delta_days.days + 1):
                day = old_date + timedelta(days=i)
                URL = url + host + day.strftime('%d.%m.%Y')  # собранная ссылка
                arr_date.append(URL)
            return arr_date

Переделал программу, но столкунулся с записью в файл.csv (файл постоянно перезаписывается) и не могу понять почему некотырые данные при записи меняют тип (в ответе приходит - 15.7000000, а в файл записывается - 15.июл), помогите плз разобраться, вот обновленный код (второй файл проги без изменений):

'''

 import mod_file
    import csv
    import os

    FILE = 'API_PB.csv'


def getjason(url):
    import requests
    requests = requests.get(url)
    respounse = requests.json()
    arr = []

    for key, value in respounse.items():
        if key == 'date':
            arr.append({
                key: value
            })

        elif key == 'exchangeRate':
            for i in value:
                for j in i:
                    if i[j] == 'USD':
                        for z in i:
                            arr.append({
                                z: i[z]
                            })

    return arr


def save_parsed_date(arr, path):
    with open(path, 'w', newline='') as file:
        w = csv.writer(file, delimiter=';')
        w.writerow(['ДАТА', 'UAH', 'USD', 'КУРС НБ/sale',
                    'КУРС НБ/purchase', 'КУРС ПБ/sale', 'КУРС ПБ/purchase'])
        w.writerow([str(*list(i.values())) for i in arr])


def main():  # главная функция
    arr_date = mod_file.date_for_links()
    for url in arr_date:
        getjason(url)
        arr = getjason(url)
        save_parsed_date(arr, FILE)
        os.startfile(FILE)


main()'''

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