12345678910111213141516171819202122232425262728293031323334 |
- import json
- import sqlite3
- import pickle
- import uuid
- from datetime import datetime
- from collections import defaultdict
- with sqlite3.connect("./rollbot.sqlite") as db:
- cur = db.execute("SELECT person_id, curses, blessings FROM curse_bless_score")
- karma = defaultdict(int)
- for (pid, c, b) in cur:
- karma[pid] -= c
- karma[pid] += b
- curses = {k: json.dumps({"score": v, "zero_passes": 0}) for k, v in karma.items()}
- print(curses)
- # cur = db.execute("SELECT items, group_id FROM watchlist")
- # watchlist = []
- # for (items, _) in cur:
- # watchlist += pickle.loads(items)
- # print(watchlist)
- dead_guys = {}
- cur = db.execute("SELECT state, games, timestamp FROM hangguy_dead_guy")
- for (state, liftime, timestamp) in cur:
- timestamp = datetime.fromisoformat(timestamp)
- dead_guys[f"{uuid.uuid4().hex}-{timestamp.isoformat()}"] = json.dumps({"state": state, "lifetime": liftime, "timestamp": timestamp.timestamp()})
- print(dead_guys)
- with sqlite3.connect("./rollbot.db") as db:
- db.executemany("INSERT INTO curse_score VALUES (?, ?)", list(curses.items()))
- # db.execute("INSERT INTO watchlist VALUES (?, ?)", .items())
- db.executemany("INSERT INTO dead_guy VALUES (?, ?)", list(dead_guys.items()))
|