Курсы валют Национального банка Республики Беларусь
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
Release history Release notifications | RSS feed
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)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
nbrb-1.0.0-py3-none-any.whl
(9.8 kB
view details)
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ebee57d05c59658b7f470d8897e7a286d09982cb0b9521febc38880aef0ac100
|
|
| MD5 |
5ec0f02ed03a4a90d0ac2d940abfd37d
|
|
| BLAKE2b-256 |
1a45175cb978b0b06496d40af2dbf335513a38c1b67e6476e194822a565f407f
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e8bd70a9c12fa9f8373d696cd49e1cec3412b131c044f81fd065daf876a9bf81
|
|
| MD5 |
2d7624d8e38d0f4cad0b4846c7241e1c
|
|
| BLAKE2b-256 |
ca93f6a3fc5269d50f445bd7579fdb1327a9cf47755c5c9f46a0a85ab961b84c
|