import gradio as gr import requests from bs4 import BeautifulSoup import re def search_fn(query): page = requests.get(f"https://www.google.com/search?q={query}") soup = BeautifulSoup(page.content) #links = soup.findAll("a") links = soup.findAll("a") file = open("myfile.txt", "w") for link in soup.find_all("a",href=re.compile("(?<=/url\?q=)(htt.*://.*)")): out = (re.split(":(?=http)",link["href"].replace("/url?q=","").split("&sa",1)[0])) out = out[0] frame_l=f'
' file.writelines(frame_l) #print(file1.read()) print (out) file.close() with open("myfile.txt", "r") as file1: html_out = file1.read() return (html_out) def first(): out = '''

Loading''' return out def test(inp): with open("myfile.txt", "r") as file1: html_out = file1.read() style = ''' .grid-mee { display: grid; justify-items:start; width: 100%; } .container-mee { position: absolute; overflow: hidden; width: 49%; padding-top: 56.25%; /* 16:9 Aspect Ratio (divide 9 by 16 = 0.5625) */ } /* Then style the iframe to fit in the container div with full height and width */ .responsive-iframe-mee { position: absolute; top: 0; left: 0; bottom: 0; right: 0; width: 100%; height: 100%; } ''' out = f'''
{html_out}
''' return out with gr.Blocks() as app: with gr.Row(): search_box=gr.Textbox("Search") search_btn=gr.Button() out_text = gr.Textbox() with gr.Row(): input = gr.Textbox() btn = gr.Button() output = gr.HTML("""""") search_btn.click(search_fn,search_box,out_text) btn.click(first,None,output).then(test,input,output) app.launch()