speakernew / text_extractor.py
subramaniansrc's picture
Create text_extractor.py
a09773c verified
Raw
History Blame Contribute Delete
815 Bytes
from pptx import Presentation
from PyPDF2 import PdfReader
from docx import Document
def extract_txt(file):
return file.read().decode()
def extract_pdf(file):
reader = PdfReader(file)
text = ""
for page in reader.pages:
page_text = page.extract_text()
if page_text:
text += page_text + "\n"
return text
def extract_docx(file):
doc = Document(file)
paragraphs = [p.text for p in doc.paragraphs if p.text.strip() != ""]
return paragraphs
def extract_ppt(file):
prs = Presentation(file)
slides = []
for slide in prs.slides:
slide_text = ""
for shape in slide.shapes:
if hasattr(shape, "text"):
slide_text += shape.text + "\n"
slides.append(slide_text)
return slides