Spaces:
Runtime error
Runtime error
import gradio as gr | |
from epub2txt import epub2txt | |
class GUI: | |
def __init__(self): | |
with gr.Blocks() as demo: | |
self.out = gr.Markdown().attach_load_event(self.hello, None) | |
demo.launch() | |
def process(self, file): | |
ch_list = epub2txt(file, outputlist=True) | |
chapter_titles = epub2txt.content_titles | |
title = epub2txt.title | |
return f"# {title}\n\n" + "\n\n".join([f"## {ct}\n\n{c}" for ct, c in zip(chapter_titles, ch_list)]) | |
def greet(self, name): | |
return "Hello " + name + "!!" | |
def hello(self, profile: gr.OAuthProfile | None): | |
if profile is None: | |
with gr.Blocks(css=".lbtn {float: right;}") as demo: | |
with gr.Row(): | |
gr.LoginButton(elem_classes="lbtn") | |
return ( | |
'# ePub summarization tool ' | |
'<p style="text-align: center;">Login to access the tool.</p>' | |
) | |
with gr.Blocks(css=".lbtn {float: right;}") as demo: | |
with gr.Row(): | |
gr.LoginButton(elem_classes="lbtn") | |
gr.LogoutButton(elem_classes="lbtn") | |
inp = gr.File(file_types=['.epub']) | |
inp.change(self.process, inp, self.out) | |
return self.greet(profile.name) | |
GUI() |