fix: skip unreadable PDFs during metadata extraction

This commit is contained in:
2026-08-10 23:58:42 -04:00
parent 1415cb6244
commit 3091cc879d
@@ -53,7 +53,7 @@ class Extractor:
# Sort based on file priority
# EPUB tends to give better metadata results over pdf
sorted_files = sorted(files, key=lambda f: Extractor._get_file_priority(f))
for file in sorted_files:
match get_file_extension(file):
case "epub":
@@ -155,7 +155,11 @@ class PdfExtractor(FileExtractor):
if isinstance(data, UploadFile):
data = data.file
doc = pypdfium2.PdfDocument(data)
try:
doc = pypdfium2.PdfDocument(data)
except Exception as e:
logger.error(f"Error extracting metadata from pdf: {e}")
return {}
basic_metadata = doc.get_metadata_dict(skip_empty=False)
metadata["title"] = basic_metadata["Title"]