Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
@@ -108,18 +108,22 @@ def on_select(space):
|
|
108 |
print(traceback.format_exc())
|
109 |
return f"오류가 발생했습니다: {str(e)}", "", ""
|
110 |
|
111 |
-
def update_screenshot(url, last_url):
|
112 |
-
print(f"Updating screenshot. Current URL: {url}, Last URL: {last_url}")
|
113 |
-
if url and url != last_url:
|
114 |
screenshot = take_screenshot(url)
|
115 |
print("Screenshot updated")
|
116 |
return screenshot, url
|
117 |
print("No update needed")
|
118 |
return gr.update(), last_url
|
119 |
-
|
|
|
|
|
|
|
|
|
120 |
def take_screenshot(url):
|
121 |
try:
|
122 |
-
print(f"
|
123 |
client = Client("ginipick/selenium-screenshot-gradio")
|
124 |
result = client.predict(url=url, api_name="/predict")
|
125 |
print(f"Screenshot result: {result}")
|
@@ -127,10 +131,10 @@ def take_screenshot(url):
|
|
127 |
return Image.open(result)
|
128 |
else:
|
129 |
print(f"Invalid result from API: {result}")
|
130 |
-
return Image.new('RGB', (
|
131 |
except Exception as e:
|
132 |
print(f"Screenshot error: {str(e)}")
|
133 |
-
return Image.new('RGB', (
|
134 |
|
135 |
def create_ui():
|
136 |
try:
|
@@ -193,6 +197,7 @@ def create_ui():
|
|
193 |
inputs=[url_state, last_url_state],
|
194 |
outputs=[screenshot_output, last_url_state]
|
195 |
)
|
|
|
196 |
|
197 |
update_trigger.click(
|
198 |
update_screenshot,
|
|
|
108 |
print(traceback.format_exc())
|
109 |
return f"오류가 발생했습니다: {str(e)}", "", ""
|
110 |
|
111 |
+
def update_screenshot(url, last_url, force_update=False):
|
112 |
+
print(f"Updating screenshot. Current URL: {url}, Last URL: {last_url}, Force update: {force_update}")
|
113 |
+
if url and (url != last_url or force_update):
|
114 |
screenshot = take_screenshot(url)
|
115 |
print("Screenshot updated")
|
116 |
return screenshot, url
|
117 |
print("No update needed")
|
118 |
return gr.update(), last_url
|
119 |
+
|
120 |
+
def refresh_screenshot(url, last_url):
|
121 |
+
print(f"Refresh button clicked. URL: {url}, Last URL: {last_url}")
|
122 |
+
return update_screenshot(url, last_url, force_update=True)
|
123 |
+
|
124 |
def take_screenshot(url):
|
125 |
try:
|
126 |
+
print(f"Taking screenshot of URL: {url}")
|
127 |
client = Client("ginipick/selenium-screenshot-gradio")
|
128 |
result = client.predict(url=url, api_name="/predict")
|
129 |
print(f"Screenshot result: {result}")
|
|
|
131 |
return Image.open(result)
|
132 |
else:
|
133 |
print(f"Invalid result from API: {result}")
|
134 |
+
return Image.new('RGB', (600, 360), color='lightgray')
|
135 |
except Exception as e:
|
136 |
print(f"Screenshot error: {str(e)}")
|
137 |
+
return Image.new('RGB', (600, 360), color='lightgray')
|
138 |
|
139 |
def create_ui():
|
140 |
try:
|
|
|
197 |
inputs=[url_state, last_url_state],
|
198 |
outputs=[screenshot_output, last_url_state]
|
199 |
)
|
200 |
+
|
201 |
|
202 |
update_trigger.click(
|
203 |
update_screenshot,
|