Spaces:
Runtime error
Runtime error
| import streamlit as st | |
| from WebComponents import ArticleExtractor as ocr | |
| from streamlit_cropper import st_cropper | |
| from PIL import Image | |
| st.set_page_config(layout="wide") | |
| def main(): | |
| tab1, tab2 = st.tabs(['Manual', 'OCR']) | |
| if 'Questions' not in st.session_state: | |
| st.session_state['Questions'] = [] | |
| st.session_state['Flag'] = False | |
| with tab1: | |
| with st.form("Manual", clear_on_submit = True): | |
| Question = st.text_area("Article") | |
| st.write(Question) | |
| col1, col2 = st.columns(2) | |
| with col1: | |
| if st.form_submit_button("Reset"): | |
| k = 0 | |
| #st.session_state['Questions'].append({"QuestionID": ID, "Question": Question}) | |
| with col2: | |
| if st.form_submit_button("Generate HL"): | |
| st.session_state['Questions'].append(Question) | |
| st.switch_page("pages/Final.py") | |
| with tab2: | |
| if "file_uploader_key" not in st.session_state: | |
| st.session_state["file_uploader_key"] = 0 | |
| Image_File = st.file_uploader("Upload the Image", type=['png', 'jpg'], key=st.session_state["file_uploader_key"],) | |
| if Image_File: | |
| col1, col2 = st.columns(2) | |
| with col1: | |
| img = Image.open(Image_File) | |
| cropped_img = st_cropper(img, realtime_update = True, box_color = "#FF0012", aspect_ratio = (5, 2)) | |
| with col2: | |
| st.write("Preview") | |
| _ = cropped_img.thumbnail((580, 580)) | |
| st.image(cropped_img) | |
| #if st.button("Extract"): | |
| ExText = ocr.ocr_with_tesseract(cropped_img) | |
| with st.form("OCR", clear_on_submit = True): | |
| Question = st.text_area("Question", value = ExText) | |
| col1, col2 = st.columns(2) | |
| with col1: | |
| if st.form_submit_button("Reset"): | |
| st.session_state["file_uploader_key"] += 1 | |
| st.rerun() | |
| #st.session_state['Questions'].append({"Question": Question}) | |
| with col2: | |
| if st.form_submit_button("Generate HL"): | |
| st.session_state['Questions'].append(Question) | |
| st.switch_page("pages/Final.py") | |
| if __name__ == "__main__": | |
| main() | |