Metadata-Version: 2.1
Name: bestchange-api
Version: 2.0.0.1
Summary: Библиотека для работы с "api" сервиса bestchange.ru
Home-page: https://maksam07.com
Author: maksam07
Author-email: maksam07@gmail.com
Project-URL: Source, https://github.com/maksam07/bestchange_api
Classifier: License :: OSI Approved :: BSD License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
License-File: LICENSE.txt

# BestChange API

Библиотека для работы с "api" сервиса bestchange.ru предоставит Вам возможность получить:

* курсы со всех направлений;
* валюты;
* обменные пункты;
* города;
* а так же кеширование всех этих данных.

Установка:

```console
pip install bestchange-api
```

Пример использования:

```python
from bestchange_api import BestChange

api = BestChange()
exchangers = api.exchangers().get()

dir_from = 93
dir_to = 42
rows = api.rates().filter(dir_from, dir_to)
title = 'Exchange rates in the direction (https://www.bestchange.ru/index.php?from={}&to={}) {} : {}'
print(title.format(dir_from, dir_to, api.currencies().get_by_id(dir_from), api.currencies().get_by_id(dir_to)))
for val in rows[:3]:
    print('{} {}'.format(exchangers[val['exchange_id']]['name'], val))

```

Для обменных пунктов есть возможность сразу получить количество отзывов о них (работает, только если у обменника есть
хоть одно направление на BestChange):

```python
from bestchange_api import BestChange

api = BestChange(exchangers_reviews=True)
```

Все методы, реализованные на данный момент:

```python
from bestchange_api import BestChange

api = BestChange(cache=True, cache_seconds=300, cache_path='/home/user/tmp/')
api.currencies().get()  # Получить список всех валют
api.currencies().get_by_id(1)  # Получить название или словарь определенной валюты
api.currencies().search_by_name('text')  # Поиск валют по подстроке

api.exchangers().get()  # Получить список всех обменных пунктов
api.exchangers().get_by_id(1)  # Получить название или словарь обменного пункта
api.exchangers().search_by_name('text')  # Поиск обменных пунктов по подстроке

api.cities().get()  # Получить список всех городов
api.cities().get_by_id(1)  # Получить название или словарь города
api.cities().search_by_name('text')  # Поиск городов по подстроке

api.rates().filter(1, 2)  # Возвращает курсы, отфильтрованный и отсортированных по направлению 

# Раздел "Популярное"
currencies = api.currencies().get()
for val in api.top().get():
    print(currencies[val['give_id']]['name'], '->', currencies[val['get_id']]['name'], ':', round(val['perc'], 2))
```
