database / app.py
xcx0902's picture
Upload folder using huggingface_hub
12657d7 verified
Raw
History Blame Contribute Delete
1.36 kB
import os
import time
import sqlite3
import threading
from pydantic import BaseModel
from fastapi import FastAPI
from fastapi.responses import HTMLResponse
from huggingface_hub import HfApi
from filesystem import upload, download
app = FastAPI()
class sql(BaseModel):
sql: str
def Upload():
download()
while True:
try:
upload()
except:
pass
time.sleep(30)
def Connect():
conn = sqlite3.connect("database.db")
cursor = conn.cursor()
return conn, cursor
def Close(conn: sqlite3.Connection):
conn.commit()
conn.close()
thread = threading.Thread(target=Upload)
thread.start()
@app.get("/", response_class=HTMLResponse)
def HuggingFaceSpaceRoot():
return open("usage.html").read()
@app.head("/")
def UptimeRobot():
return "OK"
def execute_sql(sql: str):
conn, cursor = Connect()
cursor.execute(sql)
Close(conn)
@app.post("/sql")
def execute_sql_post(param: sql):
return execute_sql(param.sql)
@app.get("/sql")
def execute_sql_get(sql: str):
return execute_sql(sql)
def select(sql: str):
conn, cursor = Connect()
result = cursor.execute(sql).fetchall()
Close(conn)
return result
@app.post("/select")
def select_post(param: sql):
return select(param.sql)
@app.get("/select")
def select_get(sql: str):
return select(sql)