Skip to content

NuIIX/py-cointracker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

py-cointracker

py-cointracker — это консольное приложение на Python, которое позволяет получать и обрабатывать данные криптовалют с помощью API сервиса CoinMarketCap. Программа позволяет искать криптовалюты по названию или символу, выводить информацию в консоль и сохранять результаты в различных форматах (CSV, JSON, XML).


Оглавление


Особенности

  • Получение данных с CoinMarketCap: Использует CoinMarketCap API для загрузки актуальных данных по криптовалютам.
  • Поиск по криптовалютам: Возможность искать криптовалюты по названию или символу.
  • Интерактивный режим: Простой и удобный интерфейс командной строки для ввода запросов.
  • Экспорт данных: Сохранение результатов поиска в форматах CSV, JSON или XML.
  • Удобный вывод ошибок: Информирование пользователя в случае проблем с загрузкой данных.

Требования

  • Python 3.6+

  • API ключ от CoinMarketCap. Для работы программы необходимо получить личный API ключ от сервиса CoinMarketCap. Ключ должен быть в следующем формате:

    CMC_PRO_API_KEY=ваш_токен
    
  • Зависимости, указанные в файле requirements.txt.


Установка

  1. Клонируйте репозиторий:

    git clone https://github.com/yourusername/py-cointracker.git
    cd py-cointracker
  2. Установите зависимости:

    pip install -r requirements.txt

    При необходимости обновите установленные пакеты:

    pip install --upgrade -r requirements.txt
  3. Проверьте установленные пакеты:

    pip list

Конфигурация

Перед запуском программы необходимо задать переменную окружения с вашим API ключом. Это можно сделать, например, в файле .env или напрямую в командной строке перед запуском:

export CMC_PRO_API_KEY=ваш_токен  # Для Linux/macOS
set CMC_PRO_API_KEY=ваш_токен     # Для Windows

Запуск приложения

Приложение запускается с помощью следующей команды:

python -m src.main

После запуска приложение попытается загрузить актуальные данные с CoinMarketCap. Если данные не будут получены, вы увидите соответствующее сообщение.


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

После успешной загрузки данных программа перейдет в режим ожидания пользовательского ввода. Ввод осуществляется в консоли.

Примеры команд:

  • Поиск криптовалют:

    Введите названия или символы криптовалют, разделяя их запятыми, например:

    Bitcoin, ETH, Ripple
    

    Программа выведет найденные криптовалюты и их данные.

  • Выход из программы:

    Для выхода введите одну из следующих команд (без учета регистра):

    exit
    break
    stop
    

Экспорт результатов

Если после поиска найдены результаты, программа предложит сохранить их в файл. Доступны следующие форматы:

  • CSV
  • JSON
  • XML

Порядок действий при экспорте:

  1. Подтвердите сохранение результатов, введя y при запросе.
  2. Выберите формат файла (csv/json/xml).
  3. Укажите имя файла (без расширения).
  4. Укажите полный путь для сохранения файла (например, C:\path\to\folder).

После экспорта программа сообщит путь сохранённого файла и его размер.


Структура проекта

/py-cointracker  
│── config/  
│   ├── config.py  # Файл конфигурации приложения (настройки, API ключи и другие параметры)
│── src/  
│   ├── main.py  # Основной исполняемый файл для запуска приложения
│   ├── api.py  # Модуль для взаимодействия с CoinMarketCap API
│   ├── models.py  # Модуль, определяющий модели данных для криптовалют
│   ├── repository.py  # Модуль для работы с данными криптовалют (поиск, фильтрация и загрузка)
│   ├── serializer.py  # Модуль для экспорта данных в различные форматы (CSV, JSON, XML)
│── requirements.txt  # Список зависимостей проекта
│── README.md  # Документация проекта с инструкциями по установке и использованию

About

py-cointracker — это образовательный проект на Python, разработанный в рамках учебной практики по направлению «Информатика и вычислительная техника». Проект реализует сбор, хранение и обработку данных о криптовалютах, получаемых с сайта coinmarketcap.com.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages