File size: 1,259 Bytes
49a314a c8b3108 49a314a 2caced7 49a314a 2caced7 c73b10a 49a314a c73b10a 4a6159c 49a314a 2caced7 c8b3108 2caced7 c8b3108 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
import streamlit as st
import tempfile
import json
def add_upload(choice):
"""
Provdies the user with choice to either 'Upload Document' or 'Try Example'.
Based on user choice runs streamlit processes and save the path and name of
the 'file' to streamlit session_state which then can be fetched later.
"""
if choice == 'Upload Document':
uploaded_file = st.sidebar.file_uploader('Upload the File',
type=['pdf', 'docx', 'txt'])
if uploaded_file is not None:
with tempfile.NamedTemporaryFile(mode="wb", delete = False) as temp:
bytes_data = uploaded_file.getvalue()
temp.write(bytes_data)
st.session_state['filename'] = uploaded_file.name
st.session_state['filepath'] = temp.name
else:
# listing the options
with open('docStore/sample/files.json','r') as json_file:
files = json.load(json_file)
option = st.sidebar.selectbox('Select the example document',
list(files.keys()))
file_name = file_path = files[option]
st.session_state['filename'] = file_name
st.session_state['filepath'] = file_path
|