asdasdasadsdas commited on
Commit
1c2cfc6
·
verified ·
1 Parent(s): be8ed5e

add env and net tabs

Browse files
Files changed (1) hide show
  1. app.py +45 -5
app.py CHANGED
@@ -1,19 +1,59 @@
1
  import gradio as gr
2
  import requests
 
3
  import socket
4
 
5
  def fetch_url(url):
6
  try:
7
  r = requests.get(url, timeout=5)
8
- return f"Status: {r.status_code}\nHeaders: {dict(r.headers)}\nBody:\n{r.text[:2000]}"
 
 
 
9
  except Exception as e:
10
  return f"Error: {str(e)}"
11
 
12
- def resolve_host(host):
 
 
 
 
 
 
 
 
 
 
 
13
  try:
14
- return socket.gethostbyname(host)
 
15
  except:
16
- return "Could not resolve"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
17
 
18
- demo = gr.Interface(fn=fetch_url, inputs="text", outputs="text")
19
  demo.launch()
 
1
  import gradio as gr
2
  import requests
3
+ import os
4
  import socket
5
 
6
  def fetch_url(url):
7
  try:
8
  r = requests.get(url, timeout=5)
9
+ return f"Status: {r.status_code}
10
+ Headers: {dict(r.headers)}
11
+ Body:
12
+ {r.text[:2000]}"
13
  except Exception as e:
14
  return f"Error: {str(e)}"
15
 
16
+ def get_env():
17
+ env_vars = {}
18
+ for k, v in sorted(os.environ.items()):
19
+ env_vars[k] = v[:100]
20
+ return str(env_vars)
21
+
22
+ def net_info():
23
+ hostname = socket.gethostname()
24
+ try:
25
+ ip = socket.gethostbyname(hostname)
26
+ except:
27
+ ip = "unknown"
28
  try:
29
+ with open("/etc/resolv.conf") as f:
30
+ resolv = f.read()
31
  except:
32
+ resolv = "unreadable"
33
+ try:
34
+ with open("/etc/hosts") as f:
35
+ hosts = f.read()
36
+ except:
37
+ hosts = "unreadable"
38
+ return f"Hostname: {hostname}
39
+ IP: {ip}
40
+ resolv.conf:
41
+ {resolv}
42
+ hosts:
43
+ {hosts}"
44
+
45
+ with gr.Blocks() as demo:
46
+ with gr.Tab("Fetch"):
47
+ url_in = gr.Textbox(label="url")
48
+ url_out = gr.Textbox(label="output")
49
+ url_in.submit(fetch_url, url_in, url_out)
50
+ with gr.Tab("Env"):
51
+ env_btn = gr.Button("Get Env")
52
+ env_out = gr.Textbox(label="env")
53
+ env_btn.click(get_env, None, env_out)
54
+ with gr.Tab("Net"):
55
+ net_btn = gr.Button("Get Net Info")
56
+ net_out = gr.Textbox(label="net")
57
+ net_btn.click(net_info, None, net_out)
58
 
 
59
  demo.launch()