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()