Spaces:
Sleeping
Sleeping
| from fastapi import FastAPI | |
| import duckdb | |
| app = FastAPI() | |
| HF_PATH = "hf://datasets/tfqdeadlo/Inddata" | |
| # HF parquet read support | |
| duckdb.sql("INSTALL httpfs; LOAD httpfs;") | |
| def home(): | |
| return {"status": "API running"} | |
| def search(mobile: str): | |
| try: | |
| prefix = mobile[:3] | |
| query = f""" | |
| SELECT * | |
| FROM read_parquet( | |
| '{HF_PATH}/{prefix}/*.parquet', | |
| union_by_name=True | |
| ) | |
| WHERE mobile = '{mobile}' | |
| """ | |
| df = duckdb.query(query).to_df() | |
| if df.empty: | |
| return { | |
| "found": 0, | |
| "data": [] | |
| } | |
| return { | |
| "found": len(df), | |
| "data": df.to_dict(orient="records") # 🔥 FULL ROW | |
| } | |
| except Exception as e: | |
| return {"error": str(e)} |