mangalathkedar commited on
Commit
de78b4f
·
verified ·
1 Parent(s): 67de82a

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +14 -4
app.py CHANGED
@@ -3,7 +3,7 @@ import streamlit as st
3
  from openai import OpenAI
4
  import os
5
  from dotenv import load_dotenv
6
- import pdf2image
7
  from PIL import Image
8
  import io
9
  import tempfile
@@ -14,15 +14,25 @@ load_dotenv()
14
  client = OpenAI(api_key=os.getenv('OPENAI_API_KEY'))
15
 
16
  def convert_pdf_to_images(pdf_file):
17
- """Convert PDF to list of images"""
 
18
  with tempfile.NamedTemporaryFile(delete=False, suffix='.pdf') as tmp_file:
19
  tmp_file.write(pdf_file.getvalue())
20
  pdf_path = tmp_file.name
21
-
22
- images = pdf2image.convert_from_path(pdf_path)
 
 
 
 
 
 
 
 
23
  os.unlink(pdf_path)
24
  return images
25
 
 
26
  def format_response(text):
27
  """Format the analysis response with clean styling"""
28
  formatted_text = ""
 
3
  from openai import OpenAI
4
  import os
5
  from dotenv import load_dotenv
6
+ import fitz
7
  from PIL import Image
8
  import io
9
  import tempfile
 
14
  client = OpenAI(api_key=os.getenv('OPENAI_API_KEY'))
15
 
16
  def convert_pdf_to_images(pdf_file):
17
+ """Convert PDF to list of images using PyMuPDF"""
18
+ images = []
19
  with tempfile.NamedTemporaryFile(delete=False, suffix='.pdf') as tmp_file:
20
  tmp_file.write(pdf_file.getvalue())
21
  pdf_path = tmp_file.name
22
+
23
+ pdf_document = fitz.open(pdf_path)
24
+ for page_number in range(pdf_document.page_count):
25
+ page = pdf_document[page_number]
26
+ pix = page.get_pixmap()
27
+ img_data = pix.tobytes("png")
28
+ image = Image.open(io.BytesIO(img_data))
29
+ images.append(image)
30
+
31
+ pdf_document.close()
32
  os.unlink(pdf_path)
33
  return images
34
 
35
+
36
  def format_response(text):
37
  """Format the analysis response with clean styling"""
38
  formatted_text = ""