Comments 5
в функции processor
:
try:
...
except Exception as exception:
не позволил вам найти опечатку в строчке
with pdfplumber.open(path) as pfd:
тут явная опечатка pfd
должно быть pdf
. ну и, кмк if len(pdf.pages):
можно заменить было бы на if pdf.pages:
.
А еще там же, можно было бы написать
from pathlib import Path
ext = Path(path).suffix.lower()
и дальше сравнивать if ext == '.pdf':
, и не повторять кучу раз код. Да, три лишние строчки добавится, но код станет читабельнее.
Огонь, спасибо за ценное замечание и внимательность! Опечатку поправлю как доберусь до десктопа.
Изначально при отладке в except стоял print(exception) и он был выпилен. with появился чуть позже. Спасибо еще раз.
кмк, лучше переписать список ожидаемых exceptions, чем Exception
. Но это дело вкуса.
я в последнее время очень полюбил модуль pathlib (раньше использовал py.path), и всем советую его. но если не хочется, всегда можно сделать os.path.splitext(filename)[1]
. собственно идея комментария была в том, что бы не делать path.lower()
несколько раз в коде + сделать аккуратнее логику с .jpg
/jpeg
.
а вообще спасибо за статью — мне было интересно почитать и кое-что новое узнал. когда-нибудь пригодится :)
На самом деле, как оказалось, на рынке практически отсутствуют вменяемые решения каталогизации и поиска по содержимому pdf файлов.
Буду признателен если кто-то может порекомендовать коробочные решения по хранению и интеллектуальному поиску по тексту большой массы pdf файлов.
Как сделать поиск по файлоболотам в 104 строки кода на python