seawolf2357 commited on
Commit
4e14759
ยท
verified ยท
1 Parent(s): 1d7d055

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +14 -13
app.py CHANGED
@@ -184,7 +184,6 @@ MAJOR_COUNTRIES = list(COUNTRY_CODES.keys()) # COUNTRY_LOCATIONS ๋Œ€์‹  COUNTRY
184
  def search_serphouse(query, country, page=1, num_result=10):
185
  url = "https://api.serphouse.com/serp/live"
186
 
187
- # ๊ฒ€์ƒ‰์–ด ๋ฒˆ์—ญ
188
  translated_query = translate_query(query, country)
189
  print(f"Original query: {query}")
190
  print(f"Translated query: {translated_query}")
@@ -193,14 +192,14 @@ def search_serphouse(query, country, page=1, num_result=10):
193
  "data": {
194
  "q": translated_query,
195
  "domain": "google.com",
196
- "loc": country, # ๊ตญ๊ฐ€ ์ด๋ฆ„ ์‚ฌ์šฉ
197
  "lang": COUNTRY_LANGUAGES.get(country, "en"),
198
  "device": "desktop",
199
- "serp_type": "web", # web์œผ๋กœ ๋ณ€๊ฒฝ
200
  "page": "1",
 
201
  "verbatim": "0",
202
- "gfilter": "0",
203
- "num_result": "10" # num_result๋กœ ๋ณ€๊ฒฝ
204
  }
205
  }
206
 
@@ -214,7 +213,7 @@ def search_serphouse(query, country, page=1, num_result=10):
214
  response = requests.post(url, json=payload, headers=headers)
215
  print("Request payload:", json.dumps(payload, indent=2, ensure_ascii=False))
216
  print("Response status:", response.status_code)
217
- print("Response content:", response.text[:500]) # ์‘๋‹ต ๋‚ด์šฉ ํ™•์ธ
218
 
219
  response.raise_for_status()
220
  return {"results": response.json(), "translated_query": translated_query}
@@ -232,24 +231,26 @@ def format_results_from_raw(response_data):
232
  results = response_data["results"]
233
  translated_query = response_data["translated_query"]
234
 
235
- news_results = results.get('results', {}).get('results', {}).get('news', [])
236
- if not news_results:
 
237
  return "๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.", []
238
 
239
  articles = []
240
- for idx, result in enumerate(news_results, 1):
241
  articles.append({
242
  "index": idx,
243
  "title": result.get("title", "์ œ๋ชฉ ์—†์Œ"),
244
- "link": result.get("url", result.get("link", "#")),
245
  "snippet": result.get("snippet", "๋‚ด์šฉ ์—†์Œ"),
246
- "channel": result.get("channel", result.get("source", "์•Œ ์ˆ˜ ์—†์Œ")),
247
- "time": result.get("time", result.get("date", "์•Œ ์ˆ˜ ์—†๋Š” ์‹œ๊ฐ„")),
248
- "image_url": result.get("img", result.get("thumbnail", "")),
249
  "translated_query": translated_query
250
  })
251
  return "", articles
252
  except Exception as e:
 
253
  return f"๊ฒฐ๊ณผ ์ฒ˜๋ฆฌ ์ค‘ ์˜ค๋ฅ˜ ๋ฐœ์ƒ: {str(e)}", []
254
 
255
  def serphouse_search(query, country):
 
184
  def search_serphouse(query, country, page=1, num_result=10):
185
  url = "https://api.serphouse.com/serp/live"
186
 
 
187
  translated_query = translate_query(query, country)
188
  print(f"Original query: {query}")
189
  print(f"Translated query: {translated_query}")
 
192
  "data": {
193
  "q": translated_query,
194
  "domain": "google.com",
195
+ "loc": country,
196
  "lang": COUNTRY_LANGUAGES.get(country, "en"),
197
  "device": "desktop",
198
+ "serp_type": "web",
199
  "page": "1",
200
+ "num": "10",
201
  "verbatim": "0",
202
+ "gfilter": "0"
 
203
  }
204
  }
205
 
 
213
  response = requests.post(url, json=payload, headers=headers)
214
  print("Request payload:", json.dumps(payload, indent=2, ensure_ascii=False))
215
  print("Response status:", response.status_code)
216
+ print("Full response content:", response.text) # ์ „์ฒด ์‘๋‹ต ๋‚ด์šฉ ์ถœ๋ ฅ
217
 
218
  response.raise_for_status()
219
  return {"results": response.json(), "translated_query": translated_query}
 
231
  results = response_data["results"]
232
  translated_query = response_data["translated_query"]
233
 
234
+ # ์‘๋‹ต ๊ตฌ์กฐ ๋ณ€๊ฒฝ์— ๋”ฐ๋ฅธ ์ˆ˜์ •
235
+ search_results = results.get('results', {}).get('organic_results', []) # organic_results๋กœ ๋ณ€๊ฒฝ
236
+ if not search_results:
237
  return "๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.", []
238
 
239
  articles = []
240
+ for idx, result in enumerate(search_results, 1):
241
  articles.append({
242
  "index": idx,
243
  "title": result.get("title", "์ œ๋ชฉ ์—†์Œ"),
244
+ "link": result.get("link", "#"),
245
  "snippet": result.get("snippet", "๋‚ด์šฉ ์—†์Œ"),
246
+ "channel": result.get("source", "์•Œ ์ˆ˜ ์—†์Œ"),
247
+ "time": result.get("date", "์•Œ ์ˆ˜ ์—†๋Š” ์‹œ๊ฐ„"),
248
+ "image_url": result.get("thumbnail", ""),
249
  "translated_query": translated_query
250
  })
251
  return "", articles
252
  except Exception as e:
253
+ print(f"Format error: {str(e)}") # ๋””๋ฒ„๊น…์„ ์œ„ํ•œ ์—๋Ÿฌ ์ถœ๋ ฅ ์ถ”๊ฐ€
254
  return f"๊ฒฐ๊ณผ ์ฒ˜๋ฆฌ ์ค‘ ์˜ค๋ฅ˜ ๋ฐœ์ƒ: {str(e)}", []
255
 
256
  def serphouse_search(query, country):