Бюджет: 5000 UAH Термін: 30 днів
Для вирішення задачі детекції підробок у текстових PDF-файлах недостатньо просто порівнювати текст. Потрібен інструмент, який аналізує внутрішню структуру об’єктів PDF, оскільки будь-яке втручання через редактор залишає «цифрові сліди», непомітні для ока, але очевидні для коду.
Технічна стратегія реалізації (Python):
Аналіз метаданих та сигнатур (Metadata & Producer check): Кожна установа використовує специфічне ПЗ для генерації виписок (наприклад, IText, Quartz, ReportLab). Якщо у файлі з’являються теги Adobe Acrobat, NitroPDF або Preview, або якщо ModDate суттєво відрізняється від CreationDate — це миттєвий сигнал про втручання.
Перевірка структури об’єктів (Incremental Updates): PDF-редактори часто зберігають зміни шляхом додавання нових об’єктів у кінець файлу (incremental updates). Інструмент буде перевіряти наявність кількох таблиць XREF та маркерів %%EOF. Це дозволяє виявити навіть ті зміни, де текст був змінений на ідентичний за довжиною.
Контроль шрифтів та кодування (Font & Encoding Consistency): Оригінальні системи зазвичай використовують підмножини шрифтів (Subsets). При ручному редагуванні редактор часто підставляє системний шрифт або змінює кодування символів. Ми будемо порівнювати хеш-суми вбудованих шрифтів із «еталонними» для цієї установи.
Координатний аналіз (Layout X/Y Verification): Системи генерації виписок вирівнюють текст із точністю до тисячних часток пікселя. Ручне редагування майже завжди призводить до мікро-зсувів по осях X або Y, які інструмент зафіксує через бібліотеку pdfminer.six.
Економіка та масштабування:
Собівартість: Перевірка на Python (бібліотеки PyMuPDF, pdfminer) виконується локально без залучення сторонніх API чи AI, тому вартість однієї перевірки фактично дорівнює вартості кількох секунд роботи вашого сервера.
Універсальність: Система будується за модульним принципом. Для кожної нової установи створюється окремий «профіль-маска» з еталонними характеристиками структури.
Уточнююче питання:
Чи маєте ви доступ до 10-20 гарантовано оригінальних виписок від цієї установи для створення початкового «цифрового зліпка» (еталона) структури?