Teligram-API / app.py
Bruhletme's picture
Upload folder using huggingface_hub
e87dddd verified
Raw
History Blame Contribute Delete
1.1 kB
import sqlite3, json, os
from flask import Flask, request, jsonify
from huggingface_hub import hf_hub_download
app = Flask(__name__)
# download db once
DB_PATH = hf_hub_download(
repo_id="Bruhletme/Teligram",
filename="new.db",
repo_type="dataset",
token=os.environ.get("HF_TOKEN")
)
conn = sqlite3.connect(DB_PATH, check_same_thread=False)
conn.row_factory = sqlite3.Row
cur = conn.cursor()
def fix(v):
if v is None: return None
try:
return v.encode('latin1').decode('utf-8')
except:
return v
@app.route("/tg")
def tg():
q = (request.args.get("id") or "").strip()
if not q.isdigit():
return jsonify({"error":"invalid"}), 400
cur.execute("SELECT id,phone,username,first_name,last_name FROM users WHERE id=? LIMIT 5",(q,))
rows = cur.fetchall()
if not rows:
return jsonify({"found":False})
data=[]
for r in rows:
d=dict(r)
for k in d:
d[k]=fix(d[k])
data.append(d)
return jsonify({"found":True,"count":len(data),"results":data})
app.run(host="0.0.0.0", port=7860)