Spaces:
Runtime error
Runtime error
| import os | |
| import streamlit as st | |
| from pdfminer.high_level import extract_pages | |
| from search import search | |
| from get_paper import get_paper | |
| from get_pages import get_pages | |
| from tts import inference | |
| st.title("ArXiV Audio") | |
| with st.form(key="search_form"): | |
| col1, col2, col3 = st.columns(3) | |
| with col1: | |
| query = st.text_input("Search Paper") | |
| with col2: | |
| sort_by = st.selectbox(label="Sort By", options=( | |
| 'Relevance', 'Last Updated Date', 'Submitted Date')) | |
| with col3: | |
| order_by = st.selectbox( | |
| label="Order By", options=('Ascending', 'Descending')) | |
| submit = st.form_submit_button(label="Search") | |
| lst = search(query=query, sort_by=sort_by, sort_order=order_by) | |
| if len(lst) != 0: | |
| label = "Papers for " + query | |
| with st.form(key="paper_form"): | |
| pname = st.selectbox(label=label, options=lst) | |
| submit_paper = st.form_submit_button(label="Fetch Paper") | |
| else: | |
| with st.form(key="paper_form"): | |
| pname = st.selectbox(label="NO PAPERS", options=lst) | |
| submit_paper = st.form_submit_button(label="Fetch Paper") | |
| paper = "" | |
| if submit_paper or os.path.exists('downloads/paper.pdf'): | |
| paper = get_paper(pname) | |
| print("Submit_paper = ", submit_paper) | |
| name = "" | |
| tpages = 0 | |
| lst_idx = 1 | |
| if paper: | |
| name = "./downloads/paper.pdf" | |
| tpages = len(list(extract_pages(name))) | |
| lst_idx = tpages-1 | |
| pgs = [i+1 for i in range(tpages)] | |
| start_page = 1 | |
| end_page = 1 | |
| #content = get_pages(name, start_page, end_page) | |
| #audio_path = inference(content, "english") | |
| #audio_file = open(audio_path, "rb") | |
| #audio_bytes = audio_file.read() | |
| #st.audio(audio_bytes, format='audio/wav') | |
| with st.form(key="page_form"): | |
| print("inside page form") | |
| col4, col5 = st.columns(2) | |
| with col4: | |
| print("column 1") | |
| s_page = st.selectbox(label="Start Page", options=pgs) | |
| print(s_page) | |
| start_page = s_page | |
| with col5: | |
| print("column 2") | |
| e_page = st.selectbox(label="End Page", options=pgs, index=lst_idx) | |
| print(e_page) | |
| end_page = e_page | |
| st.text("*") | |
| submit_pages = st.form_submit_button(label="Convert To Audio") | |
| print("Submit_pages' = ", submit_pages) | |
| print(start_page, end_page) | |
| print("Submit_pages = ", submit_pages) | |
| if submit_pages: | |
| content = get_pages(name, start_page, end_page) | |
| x = st.text("Converting to Audio..... Please Wait") | |
| audio_path = inference(content, "english") | |
| audio_file = open(audio_path, "rb") | |
| audio_bytes = audio_file.read() | |
| x = st.text("Done") | |
| st.audio(audio_bytes, format='audio/wav') | |
| os.remove('downloads/paper.pdf') | |
| print("Submit_paper at end state = ", submit_paper) | |
| else: | |
| with st.form(key="page_form"): | |
| col1, col2 = st.columns(2) | |
| with col1: | |
| s_page = st.selectbox(label="Start Page", options=[]) | |
| with col2: | |
| e_page = st.selectbox(label="End Page", options=[]) | |
| submit_pages2 = st.form_submit_button(label="Convert To Audio") | |
| st.text(" ") | |
| st.text(" ") | |
| st.text(" ") | |
| st.text(" ") | |
| st.text(" ") | |
| st.markdown("Created by [Archan Ghosh](https://github.com/ArchanGhosh) & [Madhurima Maji](https://github.com/madhurima99). Special Thanks to [Herumb](https://github.com/krypticmouse) for helping us with the deployment.", unsafe_allow_html=True) | |
| st.markdown("Do Support us on [Github](https://github.com/ArchanGhosh/ArxivAudio)", unsafe_allow_html =True) | |
| st.text(" ") | |
| st.text("* - Please limit to 3 pages as we are currently rate limited on CPU, we are planning to move to a GPU in the coming future. ") |