Spaces:
Sleeping
Sleeping
Update web_search.py
Browse files- web_search.py +8 -8
web_search.py
CHANGED
|
@@ -45,15 +45,13 @@ _UDISE_RE = re.compile(r"(?<!\d)(\d{11})(?!\d)")
|
|
| 45 |
|
| 46 |
def _build_query(school_name: Optional[str], state_name: Optional[str], district: Optional[str]) -> str:
|
| 47 |
parts = []
|
|
|
|
| 48 |
if school_name:
|
| 49 |
-
parts.append(school_name.strip())
|
| 50 |
-
if district:
|
| 51 |
-
parts.append(f"district {district.strip()}")
|
| 52 |
if state_name:
|
| 53 |
-
parts.append(f"state {state_name.strip()}")
|
| 54 |
-
|
| 55 |
-
|
| 56 |
-
parts.append("UDISE code OR UDISE number OR Udise")
|
| 57 |
return " ".join(parts).strip()
|
| 58 |
|
| 59 |
|
|
@@ -66,7 +64,7 @@ def _call_tavily(api_key: Optional[str], query: str):
|
|
| 66 |
try:
|
| 67 |
client = TavilyClient(key)
|
| 68 |
# SDK may return complex object; keep raw
|
| 69 |
-
resp = client.search(query=query)
|
| 70 |
return {"ok": True, "data": resp}
|
| 71 |
except Exception as e:
|
| 72 |
return {"ok": False, "error": str(e)}
|
|
@@ -108,6 +106,8 @@ def tavily_search_codes(
|
|
| 108 |
Returns:
|
| 109 |
List[str] of unique UDISE codes in the order found.
|
| 110 |
"""
|
|
|
|
|
|
|
| 111 |
query = _build_query(school_name, state_name, district)
|
| 112 |
call = _call_tavily(api_key, query)
|
| 113 |
if not call.get("ok"):
|
|
|
|
| 45 |
|
| 46 |
def _build_query(school_name: Optional[str], state_name: Optional[str], district: Optional[str]) -> str:
|
| 47 |
parts = []
|
| 48 |
+
parts.append("UDISE code of")
|
| 49 |
if school_name:
|
| 50 |
+
parts.append(f"School {school_name.strip()}")
|
|
|
|
|
|
|
| 51 |
if state_name:
|
| 52 |
+
parts.append(f"in state {state_name.strip()}")
|
| 53 |
+
if district:
|
| 54 |
+
parts.append(f"of district {district.strip()}")
|
|
|
|
| 55 |
return " ".join(parts).strip()
|
| 56 |
|
| 57 |
|
|
|
|
| 64 |
try:
|
| 65 |
client = TavilyClient(key)
|
| 66 |
# SDK may return complex object; keep raw
|
| 67 |
+
resp = client.search(query=query, country="india")
|
| 68 |
return {"ok": True, "data": resp}
|
| 69 |
except Exception as e:
|
| 70 |
return {"ok": False, "error": str(e)}
|
|
|
|
| 106 |
Returns:
|
| 107 |
List[str] of unique UDISE codes in the order found.
|
| 108 |
"""
|
| 109 |
+
if not school_name:
|
| 110 |
+
return None
|
| 111 |
query = _build_query(school_name, state_name, district)
|
| 112 |
call = _call_tavily(api_key, query)
|
| 113 |
if not call.get("ok"):
|