пятница, 23 марта 2018 г.

Загрузка курса валют за период с сайта ЦБ


Для доступа к API ЦБ используем библиотеку pycbrf. Главная проблема в написании скрипта возникла на этапе построчной записи в файл, потому что многочисленные туториалы в интернете просто не работали по разным причинам либо были перенасыщены лишними строчками кода. Скрипт использовался внутри Jupyter Notebook, поэтому даты просто забиты.


from pycbrf.toolbox import ExchangeRates
from datetime import timedelta, date
import csv

start_date = date(2015, 1, 1)
end_date = date(2018, 3, 5)

def daterange(start_date, end_date):
    for n in range(int ((end_date - start_date).days)):
        yield start_date + timedelta(n)

with open('./external_data/USdollar.csv', 'w', newline='') as csvfile:
    rate_writer = csv.writer(csvfile, delimiter=';',
                            quotechar='|', quoting=csv.QUOTE_MINIMAL)
    rate_writer.writerow(['date', 'USD'])
    for single_date in daterange(start_date, end_date):
        #print (single_date.strftime("%Y-%m-%d"))
        rates = ExchangeRates(single_date, locale_en=True)
        rate_writer.writerow([rates.date_requested, rates['USD'].value])
        rates['USD']

Комментариев нет:

Отправить комментарий