From e7de2a3d7903f4f92b4ce8ba75ca0d299e8f264a Mon Sep 17 00:00:00 2001 From: shamoon <4887959+shamoon@users.noreply.github.com> Date: Wed, 25 Sep 2024 00:25:25 -0700 Subject: [PATCH] Use pikepdf as context manager --- src/documents/migrations/1053_document_pages_count.py | 9 ++++----- src/paperless_tesseract/parsers.py | 4 ++-- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/src/documents/migrations/1053_document_pages_count.py b/src/documents/migrations/1053_document_pages_count.py index 2d8e7bb37..984f1f875 100644 --- a/src/documents/migrations/1053_document_pages_count.py +++ b/src/documents/migrations/1053_document_pages_count.py @@ -31,11 +31,10 @@ def add_number_of_pages_to_pages_count(apps, schema_editor): ) try: - pdf = pikepdf.open(source_path(doc)) - - if pdf.pages is not None: - doc.pages_count = len(pdf.pages) - doc.save() + with pikepdf.Pdf.open(source_path(doc)) as pdf: + if pdf.pages is not None: + doc.pages_count = len(pdf.pages) + doc.save() except Exception as e: # pragma: no cover print(f"Error retrieving number of pages for {doc.filename}: {e}") diff --git a/src/paperless_tesseract/parsers.py b/src/paperless_tesseract/parsers.py index 925427f51..6e6964d35 100644 --- a/src/paperless_tesseract/parsers.py +++ b/src/paperless_tesseract/parsers.py @@ -46,8 +46,8 @@ class RasterisedDocumentParser(DocumentParser): if mime_type == "application/pdf": import pikepdf - pdf = pikepdf.open(document_path) - pages_count = len(pdf.pages) + with pikepdf.Pdf.open(document_path) as pdf: + pages_count = len(pdf.pages) return pages_count def extract_metadata(self, document_path, mime_type):