Ë
    uPêjÃ  ã                   ó*   — d Z ddlmZ dededz  fd„Zy)z`
PDF text extraction utilities.

Provides text extraction from PDF files using pypdf or PyPDF2.
é    )Úverbose_loggerÚfile_contentÚreturnNc                 ó  — 	 ddl m} 	 ddlm}  || «      } ||«      }g }|j                  D ]&  }|j                  «       }|sŒ|j                  |«       Œ( |r2dj                  |«      }t        j                  dt        |«      «       |S 	 	 ddlm}	  || «      } |	|«      }g }|j                  D ]&  }|j                  «       }|sŒ|j                  |«       Œ( |r2dj                  |«      }t        j                  dt        |«      «       |S 	 y
# t        $ r t        j                  d«       Y Œ¤w xY w# t        $ r t        j                  d«       Y y
w xY w# t        $ r }
t        j                  d	|
«       Y d
}
~
y
d
}
~
ww xY w)z©
    Extract text from PDF using pypdf if available.

    Args:
        file_content: Raw PDF bytes

    Returns:
        Extracted text or None if extraction fails
    r   )ÚBytesIO)Ú	PdfReaderz

z,Extracted %s characters from PDF using pypdfz"pypdf not available, trying PyPDF2z-Extracted %s characters from PDF using PyPDF2zIPyPDF2 not available, PDF extraction requires OCR or pypdf/PyPDF2 libraryzPDF text extraction failed: %sN)Úior   Úpypdfr   ÚpagesÚextract_textÚappendÚjoinr   ÚdebugÚlenÚImportErrorÚPyPDF2Ú	Exception)r   r   ÚPypdfReaderÚpdf_fileÚreaderÚ
text_partsÚpageÚtextÚextracted_textÚPyPDF2ReaderÚes              úr/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/litellm/rag/ingestion/file_parsers/pdf_parser.pyÚextract_text_from_pdfr   
   s–  € ð.BÝð	GÝ6á˜|Ó,ˆHÙ  Ó*ˆFàˆJØŸ™ò ,�Ø×(Ñ(Ó*�ÚØ×%Ñ% dÕ+ð,ñ
 Ø!'§¡¨ZÓ!8�Ü×$Ñ$Ð%SÔUXÐYgÓUhÔiØ%Ð%ð ð	nÝ8á˜|Ó,ˆHÙ! (Ó+ˆFàˆJØŸ™ò ,�Ø×(Ñ(Ó*�ÚØ×%Ñ% dÕ+ð,ñ
 Ø!'§¡¨ZÓ!8�Ü×$Ñ$Ð%TÔVYÐZhÓViÔjØ%Ð%ð ð øô7 ò 	GÜ× Ñ Ð!EÖFð	Gûô* ò 	nÜ× Ñ Ð!lÕmð
 ð	nûô ò BÜ×ÑÐ=¸q×AÐAàûðBúsf   ‚E ‰9D ÁAD Â
E Â9D3 ÃAD3 ÄD0Ä-E Ä/D0Ä0E Ä3EÅE ÅEÅE Å	F Å E;Å;F )Ú__doc__Úlitellm._loggingr   ÚbytesÚstrr   © ó    r   ú<module>r%      s&   ðñõ ,ð:¨ð :°#¸±*ô :r$   