ginipick commited on
Commit
0bdca60
·
verified ·
1 Parent(s): 3d7f467

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +12 -7
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"Attempting to take screenshot of URL: {url}")
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', (540, 360), color='lightgray')
131
  except Exception as e:
132
  print(f"Screenshot error: {str(e)}")
133
- return Image.new('RGB', (540, 360), color='lightgray')
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,