diff options
| author | J08nY | 2022-07-05 18:17:24 +0200 |
|---|---|---|
| committer | J08nY | 2022-07-05 18:17:24 +0200 |
| commit | e79c042bdebeb2ac0645562597324b497ab196e1 (patch) | |
| tree | 41b3422b0bc0f18410c4bbde8ef1f2e91cbac0d2 | |
| parent | 5f56cd766fe7ac9a33f2a144934c677a990c9a2c (diff) | |
| download | sec-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.py | 7 |
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:]) |
