Bu proje binance.com üzerindeki bütün Bitcoin çiftlerinin değerlerini elde edip 5 dakikada bir PostgresSQL veritabanına ekleyen ve eklediği verileri API olarak dışarı açan iki kısımlı bir uygulamadır.
- Veri ekleme işleminde: Bütün bitcoin çiftlerinin isimleri ile değerli elde edilir ve veritabanına eklenir.
- Veritabanından sadece ETH/BTC çiftinin 15 dk içindeki 5dklık değerlerinin Json olarak sunulur. Ayrıca ETH/BTC nin son 60 dk içindeki ortalama değeri sunulur. Ek olarak bütün çiftlerin değeleri sunurlur.
İki ayrı yapı şeklinde çalışmaktadır. İki ayrı terminal üzerinden çalıştırabilirsiniz.
Verileri 5dk'a kadar bir veritabanına eklemek için add.py
.
API için api.py
dosyasını çalıştırınız. (localhost:5000)
Bu proje Ubuntu dağıtımında geliştirilmiştir. Kurulum Ubuntu dağıtımına göre yapılmıştır.
Kullanılan yapılar:
- Veritabanı olarak PostgresSQL. Docker üzerinden kurulumu yapılmıştır.
- PostgresSQL ile Python arasındaki bağlantı için psycopg2
- Veritabanı işlemlerinde ORM olarak SQLAlchemy (flask_sqlalchemy eklentisi şeklinde.)
- Verileri API olarak açmak için Flask
Docker Kurulumu
- Öncelikle Docker' ı bilgisayara kuralım. Link
- Bu linkteki
Post-installation steps for Linux
adımlarını da yapmanızı tavsiye ederim. Yapmazsanız Docker' ı her çalıştırdığınızdasudo
ile çalıştırmalısınız. - Üçüncü bir adım olarak
docker-compose
' u kurmalısınız:sudo apt-get install docker-compose
Kurulumları gerçekleştirdikten sonra şimdi PostgresSQL' i Docker üzerinden kullanabilirsiniz. Bunun için projenin src/rosources
dizinindeki docker-compose dosyasını çalıştırmanız yeterlidir:
docker-compose -f src/resources/docker-compose.yaml up -d
Yukarıdaki komut ile PostgresSQL image' i inecek ve arkaplanda PostgresSQL çalışacak.
PostgresSQL arayüzüne http://localhost:5431
üzerinden erişebilirsiniz.
Kullanıcı adı: postgres
,
Şifre: sade123
,
Veritabanı: postgres
Python ve PostgresSQL ile python' ın haberleşmesi için gerekenler
sudo apt-get install libpq-dev
pip install -r requirenments.txt