【Python】bitflyerのTickerを SQLiteに突っ込む(定期処理)

2018年9月25日Python, 開発

おはようございます。

前々回に続き、TickerをSQLiteに登録する処理で、
今回は定期的に実行する方法を書いてみました。

本当はスレッドなんかで各分毎に処理を動かしたかったのですが、
大分躓いてしまったのでとりあえず1分単位のみ。

プログラムは前々回のものを流用します。

スポンサーリンク

新規クラスの追加

単独で動かすクラスを追加
BackgroundSaveTicker.py

プログラムの修正

APIの修正

BfApi.py

pubnubのコールバッククラスに追加した処理をクラスの外に抽出
(分かりにくいので全体を載せておきます)

SQLiteユーティリティの修正

インスタンス生成時にDB名を渡すように修正し、
削除用のメソッドを追加。

起動、データ確認

新規作成した BackgroundSaveTickerを起動しデータを確認

A5SQLは、いちいち接続先の設定を作らなくてはならず面倒だったので、
新しく「PupSQLite」というツールを使ってみる。

データ確認
データ確認

無事に1分毎のデータが取れました。

ただ、これでいいのだろうか。。

まとめ

pubnubによる配信(タイミング)でデータ登録するのではなく、
こちらからタイミングを決めてデータを登録する方法でした。

まだちょっと非同期やスレッドの部分であいまいなところがあり躓いてしまったので
そこらへんも勉強していこうと思います。

ではでは。

スポンサーリンク


関連するコンテンツ

2018年9月25日Python, 開発API, Bitflyer, Python, Python3, SQLite, プログラミング

Posted by doradora