Skip to main content

Курсы валют Национального банка Республики Беларусь

Project description

nbrb

Python-библиотека для работы с api Национального банка Республики Беларусь (НБ РБ).

Возможности

  • Получение полного перечня валют, по отношению к которым устанавливается официальный курс белорусского рубля.
  • Получение курса конкретной валюты по внутреннему коду НБ РБ, цифровому или буквенном ISO-коду.
  • Выборка курсов на произвольную дату и с учётом периодичности (ежедневно/ежемесячно).
  • Получение динамики курсов (до 365 дней).
  • Поучение ставки рефинсирования.
  • Готовый NBRBClient с поддержкой переиспользования requests.Session, таймаутов и контекстного менеджера.

Установка

pip install nbrb

Быстрый старт

from nbrb import fetch_rate

rate = fetch_rate("USD", param_mode=2)
print(f"{rate.cur_scale} {rate.cur_abbreviation}: {rate.cur_official_rate} BYN")

Использование клиента

from datetime import date
from nbrb import NBRBClient

with NBRBClient(timeout=5.0) as client:
    currencies = client.list_currencies()
    usd_today = client.get_rate("USD", param_mode=2)
    usd_history = client.get_rate_dynamics(
        431,
        start_date=date(2024, 1, 1),
        end_date=date(2024, 3, 31),
    )

Больше примеров в файле examples.py

Обработка ошибок

Все исключения библиотеки наследуются от nbrb.NBRBError.

from nbrb import fetch_rate, HTTPError, NBRBError

try:
    rate = fetch_rate(431)
except HTTPError as exc:
    print(f"API вернуло ошибку: {exc.status_code} - {exc}")
except NBRBError as exc:
    print(f"Произошла ошибка библиотеки: {exc}")

Лицензия

Проект распространяется по лицензии MIT. См. файл LICENSE

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nbrb-1.0.0.tar.gz (9.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nbrb-1.0.0-py3-none-any.whl (9.8 kB view details)

Uploaded Python 3

File details

Details for the file nbrb-1.0.0.tar.gz.

File metadata

  • Download URL: nbrb-1.0.0.tar.gz
  • Upload date:
  • Size: 9.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for nbrb-1.0.0.tar.gz
Algorithm Hash digest
SHA256 ebee57d05c59658b7f470d8897e7a286d09982cb0b9521febc38880aef0ac100
MD5 5ec0f02ed03a4a90d0ac2d940abfd37d
BLAKE2b-256 1a45175cb978b0b06496d40af2dbf335513a38c1b67e6476e194822a565f407f

See more details on using hashes here.

File details

Details for the file nbrb-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: nbrb-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 9.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for nbrb-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e8bd70a9c12fa9f8373d696cd49e1cec3412b131c044f81fd065daf876a9bf81
MD5 2d7624d8e38d0f4cad0b4846c7241e1c
BLAKE2b-256 ca93f6a3fc5269d50f445bd7579fdb1327a9cf47755c5c9f46a0a85ab961b84c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page