aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorJ08nY2022-07-05 18:17:24 +0200
committerJ08nY2022-07-05 18:17:24 +0200
commite79c042bdebeb2ac0645562597324b497ab196e1 (patch)
tree41b3422b0bc0f18410c4bbde8ef1f2e91cbac0d2
parent5f56cd766fe7ac9a33f2a144934c677a990c9a2c (diff)
downloadsec-certs-e79c042bdebeb2ac0645562597324b497ab196e1.tar.gz
sec-certs-e79c042bdebeb2ac0645562597324b497ab196e1.tar.zst
sec-certs-e79c042bdebeb2ac0645562597324b497ab196e1.zip
Fix PDF metadata parsing.
Closing the file object before reading things off of the metadata object leads to "seek of closed file" errors.
-rw-r--r--sec_certs/helpers.py7
1 files changed, 5 insertions, 2 deletions
diff --git a/sec_certs/helpers.py b/sec_certs/helpers.py
index 171fb49b..a5ff9c59 100644
--- a/sec_certs/helpers.py
+++ b/sec_certs/helpers.py
@@ -265,8 +265,11 @@ def extract_pdf_metadata(filepath: Path) -> Tuple[str, Optional[Dict[str, Any]]]
metadata["pdf_number_of_pages"] = pdf.getNumPages()
pdf_document_info = pdf.getDocumentInfo()
- for key, val in pdf_document_info.items():
- metadata[str(key)] = map_metadata_value(val)
+ if pdf_document_info is None:
+ raise ValueError("PDF metadata unavailable")
+
+ for key, val in pdf_document_info.items():
+ metadata[str(key)] = map_metadata_value(val)
except Exception as e:
relative_filepath = "/".join(str(filepath).split("/")[-4:])