File size: 816 Bytes
c2915c1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
35
from gtts import gTTS
import streamlit as st
import PyPDF2
import io

from PyPDF2 import PdfReader

def read_pdf(uploaded_file):
    file_buffer = io.BytesIO(uploaded_file.read())
    pdf_reader = PdfReader(file_buffer)
    text = ""
    for page in pdf_reader.pages:
        text += page.extract_text()
    return text

def speak_text(text):
    tts = gTTS(text=text, lang='en')
    tts.save("output.mp3")
    st.audio("output.mp3", format='audio/mp3')

def main():
    st.title("Lazy Coder's PDF Reader")

    uploaded_file = st.file_uploader("Upload a PDF file", type=["pdf"])

    if uploaded_file is not None:
        st.write("Uploaded PDF file:", uploaded_file.name)

        if st.button("Send"):
            text = read_pdf(uploaded_file)
            speak_text(text)

if __name__ == "__main__":
    main()