File size: 961 Bytes
6731045
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import gradio as gr
from search_engines import Google

search_engine = Google()

def scrape_search_results(query, num_results=5):
    try:
        results = search_engine.search(query, num_results=num_results)
        search_results = [
            {"title": result.title, "url": result.url, "description": result.description}
            for result in results
        ]
        return search_results
    except Exception as e:
        return [{"error": str(e)}]

def search_gradio(query, num_results):
    return scrape_search_results(query, num_results)

interface = gr.Interface(
    fn=search_gradio,
    inputs=[
        gr.Textbox(label="Search Query"),
        gr.Slider(label="Number of Results", minimum=1, maximum=10, step=1, default=5)
    ],
    outputs="json",
    title="Search Engine Scraper",
    description="Scrapes Google search engine results based on input query and number of results."
)

if __name__ == "__main__":
    interface.launch()