6月 16, 2022

pythonを用いたinfluxdbへのデータ保存

pythonで実装したプログラムで取得したデータをinfluxdbに保存する
こちらを参考に実装


ライブラリのインストール

$ pip install influxdb

pythonプログラムの記述

ライブラリの読み込みと、初期設定を行う
import influxdb

db = influxdb.InfluxDBClient(
        host='192.168.***.***',
        port=8086,
        database='homedata'
        )

書き込み用の関数を定義
def write_to_influxdb(sensorNum, data):
    points = [{
        'measurement': 'switchbot_meter',
        'tags': {
            'macaddr': sensorAddr[sensorNum],
            'type': sensorType[sensorNum],
            'place': sensorPlace[sensorNum],
            },
        'time': datetime.datetime.utcnow(),
        'fields': data
        }]
    db.write_points(points)

influxdbに書き込みたいデータの準備&書き込み
下記はSwitchbotから取得したデータを書き込んでいます
                        saveData = {}
                        saveData['battery'] = battery
                        saveData['pir'] = pir
                        saveData['isIlluminance'] = isIlluminance
                        saveData['isOpen'] = isOpen
                        write_to_influxdb(sensorNum, saveData)

0 comments:

コメントを投稿