from serpapi import GoogleSearch import gradio as gr # SERP API 키 설정 API_KEY = "facc404e1b9394771101069c8ea6984719db4b437136cb33f7935e67dad7093f" def search_and_show_image(query): params = { "engine": "google", "q": query, "api_key": API_KEY, "google_domain": "google.com", "gl": "us", "hl": "en" } search = GoogleSearch(params) results = search.get_dict() organic_results = results.get("organic_results", []) if organic_results: # 첫 번째 검색 결과의 스크린샷 이미지 URL을 가져옵니다. # 스크린샷 이미지가 없는 경우, 대체 텍스트를 반환합니다. first_result = organic_results[0] screenshot_url = first_result.get("screenshot", {}).get("src", "No screenshot available for this result.") return screenshot_url else: return "No results found." # Gradio 인터페이스 구성 with gr.Blocks() as demo: with gr.Row(): query_input = gr.Textbox(label="검색어 입력") submit_button = gr.Button("검색") image_output = gr.Image() submit_button.click(search_and_show_image, inputs=query_input, outputs=image_output) # Gradio 앱 실행 demo.launch()