speedtestv2 / app.py
rbughao's picture
Create app.py
df63d95 verified
import gradio as gr
import requests
import time
def check_speed(sites):
results = []
for site in sites.splitlines():
site = site.strip()
if not site.startswith("http"):
site = "https://" + site
try:
start = time.time()
response = requests.get(site, timeout=5)
end = time.time()
speed_ms = round((end - start) * 1000, 2)
status = response.status_code
results.append(f"{site}{speed_ms} ms (Status: {status})")
except Exception as e:
results.append(f"{site} → Error: {str(e)}")
return "\n".join(results)
with gr.Blocks() as demo:
gr.Markdown("## Website Speed Checker (ms)")
input_sites = gr.Textbox(label="Enter sites (one per line)", placeholder="example.com\nhuggingface.co")
output_results = gr.Textbox(label="Results", interactive=False)
check_button = gr.Button("Check Speed")
check_button.click(fn=check_speed, inputs=input_sites, outputs=output_results)
demo.launch()