File size: 2,832 Bytes
dd7fe10
 
45a4d1c
 
dd7fe10
0e61863
dd7fe10
 
 
1eb1070
c5d7fd8
1eb1070
45a4d1c
 
 
 
 
 
 
dd7fe10
95323c2
3beaf26
95323c2
 
 
 
 
 
0e61863
3beaf26
53703b0
dd7fe10
45a4d1c
0e61863
45a4d1c
3beaf26
45a4d1c
 
3beaf26
1eb1070
3beaf26
 
 
 
 
 
 
 
 
 
 
 
 
d13cd84
f763770
ee99a07
 
 
be45e55
 
 
3beaf26
 
1e4a472
 
0e61863
3beaf26
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
import gradio as gr
import requests
import threading
import time

# ์™ธ๋ถ€ URL์— ์ ‘์†ํ•˜๋Š” ํ•จ์ˆ˜๋ฅผ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค.
def check_connection(url):
    try:
        response = requests.get(url)
        status = f"URL: {url} ์ƒํƒœ ์ฝ”๋“œ: {response.status_code}, ์ ‘์† ์ƒํƒœ: {'์ ‘์† ์„ฑ๊ณต' if response.status_code == 200 else '์ ‘์† ์‹คํŒจ'}"
    except Exception as e:
        status = f"URL: {url} ์ ‘์† ์‹คํŒจ: {str(e)}"
    print(status)
    return status

# ํƒ€์ด๋จธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ •ํ•ด์ง„ ์ฃผ๊ธฐ๋กœ ํ•จ์ˆ˜๋ฅผ ๋ฐ˜๋ณต ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.
def start_timer(url, interval):
    threading.Timer(interval, start_timer, [url, interval]).start()
    check_connection(url)

# ํƒ€์ด๋จธ ์‹œ์ž‘ ํ•จ์ˆ˜๋ฅผ Gradio์˜ ์ž…๋ ฅ๊ณผ ํ•จ๊ป˜ ์—ฐ๊ฒฐํ•ฉ๋‹ˆ๋‹ค.
def setup_timer(interval, *urls):
    interval_seconds = interval * 60  # ๋ถ„์„ ์ดˆ๋กœ ๋ณ€ํ™˜
    for url in urls:
        if url:  # URL์ด ๋น„์–ด ์žˆ์ง€ ์•Š์œผ๋ฉด ํƒ€์ด๋จธ ์‹œ์ž‘
            start_timer(url, interval_seconds)
    return "ํƒ€์ด๋จธ๊ฐ€ ์„ค์ •๋˜์—ˆ์Šต๋‹ˆ๋‹ค."

# Gradio UI ์ปดํฌ๋„ŒํŠธ๋ฅผ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค.
url_inputs = [gr.Text(label=f"URL {i+1}", placeholder=f"์ ‘์†ํ•  URL {i+1}์„ ์ž…๋ ฅํ•˜์„ธ์š”") for i in range(20)]
interval_input = gr.Slider(minimum=1, maximum=60, step=1, value=5, label="์ ‘์† ์ฃผ๊ธฐ(๋ถ„)")

# Gradio ์•ฑ ์„ค์ •
app = gr.Interface(
    fn=setup_timer,
    inputs=[interval_input] + url_inputs,
    outputs="text",
    title="URL ์ ‘์† ์ฒด์ปค",
    description="์ตœ๋Œ€ ์Šค๋ฌด ๊ฐœ์˜ URL๊ณผ ์ ‘์† ์ฃผ๊ธฐ๋ฅผ ์ž…๋ ฅํ•˜๊ณ  '์‹œ์ž‘' ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜์„ธ์š”. ์ง€์ •๋œ ์ฃผ๊ธฐ๋กœ HTTP ์ƒํƒœ ์ฝ”๋“œ ๋ฐ ์ ‘์† ์ƒํƒœ๋ฅผ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.",
    examples=[
        [
            15, 
            "https://seawolf2357-FastGPT.hf.space",
            "https://seawolf2357-NaverTalk.hf.space",
            "https://seawolf2357-timer.hf.space",
            "https://seawolf2357-timer2.hf.space",
            "https://seawolf2357-disc1ch-2.hf.space",
            "https://seawolf2357-kai-girlfriend.hf.space",
            "https://seawolf2357-kai-boyfriend.hf.space",
            "https://seawolf2357-kai-grandma.hf.space",
            "https://seawolf2357-kai-simsime.hf.space",
            "https://seawolf2357-kai-blog.hf.space",
            "https://seawolf2357-kai-anak.hf.space",
            "https://seawolf2357-kai-trans.hf.space",
            "https://seawolf2357-kai-sum.hf.space",
            "https://seawolf2357-kai-l3-70b.hf.space",
            "https://seawolf2357-kai-l3-8b.hf.space",
            "https://seawolf2357-kai-aya23-35B.hf.space",
            "https://seawolf2357-kai-law.hf.space",
            "https://seawolf2357-kai-law2.hf.space",
            "https://seawolf2357-kai-zephyr.hf.space",
            "https://seawolf2357-test10.hf.space"
        ]
    ],
    cache_examples=False  # ์บ์‹œ ๋น„ํ™œ์„ฑํ™”
)
app.launch()