Hongtyyuqu commited on
Commit
2c436ac
·
verified ·
1 Parent(s): f798e4d

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +16 -2
app.py CHANGED
@@ -1,6 +1,7 @@
1
  import os
2
  import json
3
  import httpx
 
4
  from fastapi import FastAPI, Request
5
  from fastapi.responses import StreamingResponse
6
  from pydantic import BaseModel
@@ -11,6 +12,13 @@ app = FastAPI()
11
  class ChatRequest(BaseModel):
12
  query: str
13
 
 
 
 
 
 
 
 
14
  @app.post("/api/search")
15
  async def search_api(request: ChatRequest, req: Request):
16
  async def generate():
@@ -25,8 +33,14 @@ async def search_api(request: ChatRequest, req: Request):
25
  context_parts = []
26
 
27
  for idx, r in enumerate(results, 1):
28
- sources.append({"title": r.get("title", ""), "url": r.get("url", "")})
29
- context_parts.append(f"[{idx}] Title: {r.get('title')}\nURL: {r.get('url')}\nContent: {r.get('content')}\n")
 
 
 
 
 
 
30
 
31
  context_str = "\n".join(context_parts)
32
 
 
1
  import os
2
  import json
3
  import httpx
4
+ from urllib.parse import urlparse
5
  from fastapi import FastAPI, Request
6
  from fastapi.responses import StreamingResponse
7
  from pydantic import BaseModel
 
12
  class ChatRequest(BaseModel):
13
  query: str
14
 
15
+ def get_favicon_url(url: str) -> str:
16
+ try:
17
+ domain = urlparse(url).netloc
18
+ return f"https://www.google.com/s2/favicons?domain={domain}&sz=64"
19
+ except Exception:
20
+ return ""
21
+
22
  @app.post("/api/search")
23
  async def search_api(request: ChatRequest, req: Request):
24
  async def generate():
 
33
  context_parts = []
34
 
35
  for idx, r in enumerate(results, 1):
36
+ url = r.get("url", "")
37
+ favicon = get_favicon_url(url)
38
+ sources.append({
39
+ "title": r.get("title", ""),
40
+ "url": url,
41
+ "favicon": favicon
42
+ })
43
+ context_parts.append(f"[{idx}] Title: {r.get('title')}\nURL: {url}\nContent: {r.get('content')}\n")
44
 
45
  context_str = "\n".join(context_parts)
46