Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
@@ -1,35 +1,29 @@
|
|
1 |
import gradio as gr
|
2 |
-
import
|
3 |
-
import asyncio
|
4 |
import threading
|
|
|
5 |
|
6 |
-
#
|
7 |
-
|
8 |
try:
|
9 |
-
|
10 |
-
|
11 |
-
status = f"URL: {url} 상태 코드: {response.status}, 접속 상태: {'접속 성공' if response.status == 200 else '접속 실패'}"
|
12 |
-
print(status)
|
13 |
-
return status
|
14 |
except Exception as e:
|
15 |
status = f"URL: {url} 접속 실패: {str(e)}"
|
16 |
-
|
17 |
-
|
18 |
|
19 |
-
# 타이머를 사용하여 정해진 주기로
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
if url: # URL이 비어 있지 않으면 체크
|
24 |
-
await check_connection(url)
|
25 |
-
await asyncio.sleep(1) # 각 URL 체크 후 1초 대기
|
26 |
-
await asyncio.sleep(interval - len(urls)) # 모든 URL 체크 후 interval에서 이미 소비된 시간을 뺀 만큼 대기
|
27 |
|
28 |
# 타이머 시작 함수를 Gradio의 입력과 함께 연결합니다.
|
29 |
def setup_timer(interval, *urls):
|
30 |
interval_seconds = interval * 60 # 분을 초로 변환
|
31 |
-
|
32 |
-
|
|
|
33 |
return "타이머가 설정되었습니다."
|
34 |
|
35 |
# Gradio UI 컴포넌트를 정의합니다.
|
@@ -89,6 +83,5 @@ app = gr.Interface(
|
|
89 |
],
|
90 |
cache_examples=False # 캐시 비활성화
|
91 |
)
|
|
|
92 |
|
93 |
-
if __name__ == "__main__":
|
94 |
-
app.launch()
|
|
|
1 |
import gradio as gr
|
2 |
+
import requests
|
|
|
3 |
import threading
|
4 |
+
import time
|
5 |
|
6 |
+
# 외부 URL에 접속하는 함수를 정의합니다.
|
7 |
+
def check_connection(url):
|
8 |
try:
|
9 |
+
response = requests.get(url)
|
10 |
+
status = f"URL: {url} 상태 코드: {response.status_code}, 접속 상태: {'접속 성공' if response.status_code == 200 else '접속 실패'}"
|
|
|
|
|
|
|
11 |
except Exception as e:
|
12 |
status = f"URL: {url} 접속 실패: {str(e)}"
|
13 |
+
print(status)
|
14 |
+
return status
|
15 |
|
16 |
+
# 타이머를 사용하여 정해진 주기로 함수를 반복 실행합니다.
|
17 |
+
def start_timer(url, interval):
|
18 |
+
threading.Timer(interval, start_timer, [url, interval]).start()
|
19 |
+
check_connection(url)
|
|
|
|
|
|
|
|
|
20 |
|
21 |
# 타이머 시작 함수를 Gradio의 입력과 함께 연결합니다.
|
22 |
def setup_timer(interval, *urls):
|
23 |
interval_seconds = interval * 60 # 분을 초로 변환
|
24 |
+
for url in urls:
|
25 |
+
if url: # URL이 비어 있지 않으면 타이머 시작
|
26 |
+
start_timer(url, interval_seconds)
|
27 |
return "타이머가 설정되었습니다."
|
28 |
|
29 |
# Gradio UI 컴포넌트를 정의합니다.
|
|
|
83 |
],
|
84 |
cache_examples=False # 캐시 비활성화
|
85 |
)
|
86 |
+
app.launch()
|
87 |
|
|
|
|