dverleysen
Posts: 34
Joined: Wed Jan 06, 2016 2:00 pm

How to delete old Google FIREBASE data with Pyhton

Tue Mar 05, 2019 12:41 pm

Hey,

A while ago I moved from hosting everything on my raspberry to the cloud, also the database.
I searched for a online free alternative to put my sensor data in = Google Firebase.

I want to cleanup the database, i only want to keep data for eg. 1 week.
Does anybody knows how to do that?
I have to search on date or timestamp and make a selection of it.

example of the stored data:
-LZoRfzbcQYIRuXPp56e
CPU: "43.3"
datenow: "2019-02-28"
humidity: 1
temp: 21.399999618530273
timenow: "15:11:53"
timestamp: "2019-02-28 15:11:53"

Code: Select all

import RPi.GPIO as GPIO
from time import sleep
import datetime
from firebase import firebase
import Adafruit_DHT
import time

import urllib2, urllib, httplib
import json
import os
from functools import partial

GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)

sensor = Adafruit_DHT.DHT22
pin = 26
humidity, temperature = Adafruit_DHT.read_retry(sensor, pin)

firebase = firebase.FirebaseApplication('https://XXXXXXXXXXX.firebaseio.com/', None)

#curs=conn.cursor()
timenow = time.strftime('%X')
datenow = time.strftime('%Y-%m-%d')
timestamp = time.strftime('%Y-%m-%d %X')

# CPU temperature
def getCPUtemperature():
    res = os.popen('vcgencmd measure_temp').readline()
    return(res.replace("temp=","").replace("'C\n",""))
var_cputemp = getCPUtemperature()

def update_firebase():

        humidity, temperature = Adafruit_DHT.read_retry(sensor, pin)
        CPU = getCPUtemperature()
        if humidity is not None and temperature is not None:
                sleep(5)
                str_temp = ' {0:0.2f} *C '.format(temperature)
                str_hum  = ' {0:0.2f} %'.format(humidity)
                print('Temp={0:0.1f}*C  Humidity={1:0.1f}%'.format(temperature, humidity))
                print( 'CPU= ') + var_cputemp + ('*C')
        else:
                print('Failed to get reading. Try again!')
                sleep(10)

        data = {"temp": temperature, "humidity": humidity, "CPU": var_cputemp, "timenow": timenow, "datenow": datenow, "timestamp": timestamp}
        firebase.post('/sensor', data)
update_firebase()

https://www.linkedin.com/pulse/harvesting-tomatoes-version-20-didier-verleysen/

Return to “Python”