TinyDB

NoSql TinyDB

from tinydb import TinyDB, Query
db = TinyDB('db.json')
# insert
db.insert({'type': 'apple', 'count': 7})
db.insert({'type': 'peach', 'count': 3})
# select all
db.all()
# iter
for item in db:
    item

datas = [dict(item) for item in db]
type(datas[0])
# search
Fruit = Query()
search = db.search(Fruit.type == 'peach')
type(search[0])
# update
db.update({'count': 10}, Fruit.type == 'apple')
db.all()
# remove
db.remove(Fruit.count < 5)
db.all()
# all remove
db.truncate()
db.all()
# drop table
db.purge_table('fruits')

# create table
table_fruits = db.table('fruits')
table_fruits.insert({'type': 'apple', 'count': 7})
table_fruits.insert({'type': 'peach', 'count': 3})
print(table_fruits.all())
print(db.all())

로또 번호 tinydb에 저장 해보기

# 로또 번호 정보 가져오기
import requests 
from tinydb import TinyDB, Query

def get_lotto_json(drwNo):
    URL_GetLottoNumber = "https://www.dhlottery.co.kr/common.do?method=getLottoNumber&drwNo=" # 현재 동행로또 주소
    resp = requests.get(URL_GetLottoNumber + drwNo)
    jsResult = resp.json()

    if jsResult["returnValue"] == "success":
        return jsResult
    else:
        return None

# 정보 저장 테이블 생성
db = TinyDB('db.json')
table = db.table('lotto_info')

# 936회 정보 저장
lotto_info = get_lotto_json('936')
if lotto_info:
    table.insert(lotto_info)

table.all()