FuseReviews / app.py
lovodkin93's picture
Update app.py
33d5737 verified
raw
history blame
1.38 kB
import gradio as gr
import os
# Function to show HTML content using an iframe
def show_html_in_iframe(page_idx):
# html_files = get_html_files_list(curr_split)
# Construct the URL using the selected index
url = f'https://wmtis.s3.eu-west-1.amazonaws.com/test/{html_files[page_idx]}'
iframe_html = f'<iframe src="{url}" width="100%" height="1000"></iframe>'
return iframe_html
# Example lists of HTML files for 'test' and 'dev' instances
# train_html_files = [f for f in os.listdir(os.path.join("html_files", "train")) if f.endswith('.html')]
# dev_html_files = [f for f in os.listdir(os.path.join("html_files", "dev")) if f.endswith('.html')]
html_files = [f for f in os.listdir(os.path.join("html_files", "test")) if f.endswith('.html')]
# Function to return the appropriate list based on instance type
def get_html_files_list(instance_type):
if instance_type == 'train':
return train_html_files
elif instance_type == 'dev':
return dev_html_files
elif instance_type == 'test':
return test_html_files
with gr.Blocks() as demo:
slider = gr.Slider(minimum=0, maximum=len(html_files)-1, step=1, label='Data Instance')
# Create the Gradio interface
slider.release(show_html_in_iframe, inputs=[slider], outputs=[gr.HTML()], api_name="HTML Viewer with Event Listeners")
# Display the interface
demo.launch()