Update app.py
Browse files
app.py
CHANGED
@@ -1,29 +1,29 @@
|
|
|
|
1 |
import gradio as gr
|
2 |
-
import requests
|
3 |
|
4 |
-
#
|
5 |
-
|
6 |
-
|
7 |
-
CX = '56b34994f47704ddd'
|
8 |
-
URL = f"https://www.googleapis.com/customsearch/v1?q={query}&cx={CX}&searchType=image&key={API_KEY}"
|
9 |
-
|
10 |
-
response = requests.get(URL)
|
11 |
-
results = response.json()
|
12 |
-
image_urls = []
|
13 |
|
14 |
-
|
15 |
-
|
16 |
-
|
|
|
|
|
17 |
|
18 |
-
#
|
19 |
-
|
|
|
|
|
20 |
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
|
|
|
|
|
|
27 |
|
28 |
-
# 인터페이스 실행
|
29 |
iface.launch()
|
|
|
1 |
+
from googleapiclient.discovery import build
|
2 |
import gradio as gr
|
|
|
3 |
|
4 |
+
# API 키와 검색 엔진 ID 설정
|
5 |
+
API_KEY = 'AIzaSyDUz3wkGal0ewRtPlzeMit88bV4hS4ZIVY'
|
6 |
+
CSE_ID = '56b34994f47704ddd'
|
|
|
|
|
|
|
|
|
|
|
|
|
7 |
|
8 |
+
def multi_search(query):
|
9 |
+
# Google Custom Search JSON API를 사용하여 웹 검색
|
10 |
+
service = build("customsearch", "v1", developerKey=API_KEY)
|
11 |
+
web_search_result = service.cse().list(q=query, cx=CSE_ID).execute()
|
12 |
+
web_results = [item['link'] for item in web_search_result.get('items', [])]
|
13 |
|
14 |
+
# YouTube Data API를 사용하여 비디오 검색
|
15 |
+
youtube = build('youtube', 'v3', developerKey=API_KEY)
|
16 |
+
video_search_result = youtube.search().list(q=query, part='snippet', type='video', maxResults=5).execute()
|
17 |
+
video_results = [f"https://www.youtube.com/watch?v={item['id']['videoId']}" for item in video_search_result.get('items', [])]
|
18 |
|
19 |
+
return web_results, video_results
|
20 |
+
|
21 |
+
iface = gr.Interface(
|
22 |
+
fn=multi_search,
|
23 |
+
inputs=gr.Textbox(lines=2, placeholder="검색할 텍스트를 입력하세요..."),
|
24 |
+
outputs=[gr.List(label="웹 검색 결과"), gr.List(label="YouTube 비디오 검색 결과")],
|
25 |
+
title="멀티 검색 결과 출력",
|
26 |
+
description="입력 텍스트를 기준으로 웹 검색 결과와 YouTube 비디오 검색 결과를 구분하여 출력합니다."
|
27 |
+
)
|
28 |
|
|
|
29 |
iface.launch()
|