Как обновлять и вставлять записи через каждые 1 минуту в sqlite?

Я создал проект django, который содержит одну таблицу. Я хочу автоматически обновлять записи в sqlite базе данных через каждую минуту. Как это можно сделать?

Я уже использовал библиотеку time.sleep(18000) из python, но это не помогло.

В операторе if:else выполняются операции вставки и обновления.

views.py:


def index(request):
    while True: 
        r1 = requests.get("http://127.0.0.1:2000/_nodes")
        script = r1.json()
        write = script['nodes']['data']
        ts1 = script['nodes']['time']
        print("write   ",write)
        print("ts1  ",ts1)

        r2 = requests.get("http://127.0.0.1:2000/_nodes")
        script = r2.json()
        read = script['nodes']['total']
        ts2 = script['nodes']['time']
        print("read   ",read)
        print("ts2  ",ts2)

        new_count = write+read
        new_t = (ts1+ts2)/2
        print ("new count", new_count)
        print("new ts", new_t)

        q = data.objects.filter()

        if q.exists():
            test1 = data.fetch()
            for row in test1:
                test1={
                    'id':row.id,
                    'sum': row.sum,
                    'ts': row.ts,
                    'status': row.status
                    }
            prev_t = test1['ts']
            prev_count = test1['sum']

            if(test1['id']==1):
                if(new_count < prev_count):
                    test2 = data.objects.get(id=1)
                    print("TEST2 Type", type(test2))
                    print(test2)
                    test2 = data(id=1,sum=new_count,ts=new_t,status="restarted")
                    test2.save()
                    print(test2)
                    print(type(test2))
                else:
                    test1 = data.fetch()
                    test2 = data.objects.get(id=1)
                    print("TEST2 Type", type(test2))
                    print(test2)
                    test2 = data(id=1,sum=new_count,ts=new_t,status="updated")
                    test2.save()
                    print(test2)
                    print(type(test2))
   
        else:
            test2 = data(id=1,sum=new_count,ts=new_t,status="firstQuery")
            test2.save()
            print (test2)
            print("Fresh record created")
            test2 = data.fetch()
            for row2 in test2:
                test2={
                    'id':row2.id,
                    'sum': row2.sum,
                    'ts': row2.ts,
                    'status': row2.status
                }
                print(test2)
                print(type(test2))

Вернуться на верх