Spaces:
Running
Running
File size: 2,504 Bytes
a728a0a b17f522 5ba7d4a b17f522 112199e b17f522 b843a6a b17f522 13a5496 b17f522 70197c9 82b10de d7b570d 3d86393 0519468 3d86393 87e3bbb b53186f b843a6a 3d86393 13a5496 cc3d66e 87e3bbb d6bdbe0 a728a0a 5d06996 a728a0a d6bdbe0 8e9b61d ff29c91 506e2ac 97c6f56 08d4832 97c6f56 f4eb8fa 97fae85 506e2ac 97fae85 ff29c91 17344f2 201d07e 390bd6e 201d07e 390bd6e 17344f2 ba49f41 79734a5 8ac81f0 f4eb8fa a1a1f0d 8d6809c 5b20fc4 e363e51 8d6809c a137c8a a728a0a 8e9b61d a728a0a 17344f2 d6bdbe0 17344f2 a728a0a a137c8a a728a0a b17f522 9730688 72c0de6 b17f522 a728a0a b17f522 d6bdbe0 7c4cb65 a728a0a |
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 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 |
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}#ip=1")
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]
rr=requests.get(f"{out}")
x_opt = (dict(rr.headers).get("x-frame-options"))
if x_opt == None:
frame_l=f'<div class="container-mee"><div class="put-on-top"><a target="_blank" href="{out}">{out}</a></div><iframe class="responsive-iframe-mee" src="{out}" frameborder="3"></iframe></div>'
file.writelines(frame_l)
else:
pass
#print(file1.read())
print (out)
print(dict(rr.headers).get("x-frame-options"))
file.close()
with open("myfile.txt", "r") as file1:
html_out = file1.read()
out = test(html_out)
return out
def first():
out = '''<h1>Loading'''
return out
def test(inp):
style = '''
.put-on-top{
align-contents:center;
border-style: solid;
border-width: 3px;
border-radius: 5px;
background: none;
padding: 0.5em;
margin-top:1em;
margin-bottom:0.3em;
}
.grid-mee {
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: space-evenly;
align-items: stretch;
align-content: space-evenly;
}
.container-mee {
position: relative;
overflow: hidden;
width: 33%;
height: 60em;
margin-top:1em;
}
/* Then style the iframe to fit in the container div with full height and width */
.responsive-iframe-mee {
position: relative;
top: 0;
left: 0;
bottom: 0;
right: 0;
width: 100%;
height: 100%;
}
'''
out = f'''<!DOCTYPE html>
<html lang="en">
<head>
</head>
<style>
{style}
</style>
<body>
<div class=grid-mee>
{inp}
</div>
</body>
</html>'''
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_put)
btn.click(first,None,output).then(test,input,output)
app.launch() |