coderpetro commited on
Commit
ee823f3
·
verified ·
1 Parent(s): 8c0c27e

Update main.py

Browse files
Files changed (1) hide show
  1. main.py +14 -8
main.py CHANGED
@@ -4,7 +4,7 @@ from huggingface_hub import hf_hub_download
4
  import pandas as pd
5
  import os
6
 
7
- app = FastAPI(title="Telegram Database API", description="Optimized Delimiter by coder petro")
8
 
9
  API_KEY = "demo"
10
  API_KEY_NAME = "x-api-key"
@@ -22,19 +22,25 @@ def load_data():
22
  token = os.environ.get("HF_TOKEN")
23
  csv_path = hf_hub_download(repo_id=REPO_ID, filename=FILENAME, repo_type="dataset", token=token)
24
 
25
- print("Loading database with Pipe (|) separator...")
26
- # Since your file uses '|' as separator, we specify sep='|'
27
- # engine='c' provides the maximum loading speed for large files
28
- df = pd.read_csv(csv_path, sep='|', low_memory=False, engine='c')
 
 
 
 
 
 
29
  df = df.astype(str).fillna("")
30
- print("Database loaded successfully with optimizations!")
31
  except Exception as e:
32
  print(f"Error loading database: {str(e)}")
33
 
34
  @app.get("/")
35
  def read_root():
36
  return {
37
- "message": "Super Fast Optimized API is running 24/7!",
38
  "developer": "coder petro"
39
  }
40
 
@@ -53,7 +59,7 @@ def search_data(
53
 
54
  search_lower = query.lower()
55
 
56
- # Fast row-filtering using modern pandas optimization
57
  mask = df.apply(lambda row: row.str.lower().str.contains(search_lower)).any(axis=1)
58
  results = df[mask].to_dict(orient="records")
59
 
 
4
  import pandas as pd
5
  import os
6
 
7
+ app = FastAPI(title="Telegram Database API", description="Python Engine by coder petro")
8
 
9
  API_KEY = "demo"
10
  API_KEY_NAME = "x-api-key"
 
22
  token = os.environ.get("HF_TOKEN")
23
  csv_path = hf_hub_download(repo_id=REPO_ID, filename=FILENAME, repo_type="dataset", token=token)
24
 
25
+ print("Loading database with Robust Python Engine...")
26
+ # Switched to engine='python' and added on_bad_lines='skip' to handle data formatting errors safely
27
+ df = pd.read_csv(
28
+ csv_path,
29
+ sep='|',
30
+ low_memory=False,
31
+ engine='python',
32
+ on_bad_lines='skip'
33
+ )
34
+ # Fill missing values and optimize string types
35
  df = df.astype(str).fillna("")
36
+ print("Database loaded successfully without any blocks!")
37
  except Exception as e:
38
  print(f"Error loading database: {str(e)}")
39
 
40
  @app.get("/")
41
  def read_root():
42
  return {
43
+ "message": "Robust Optimized API is running 24/7!",
44
  "developer": "coder petro"
45
  }
46
 
 
59
 
60
  search_lower = query.lower()
61
 
62
+ # Fast row-filtering using pandas optimized mask
63
  mask = df.apply(lambda row: row.str.lower().str.contains(search_lower)).any(axis=1)
64
  results = df[mask].to_dict(orient="records")
65