1.8 KiB
1.8 KiB
enrich_files_v1.0
Verze: 1.0
Datum: 2026-06-03
Skript: enrich_files_v1.0.py
Účel
Doplnit do existujících záznamů v MongoDB soubory.* pole content.* parsovaná z obsahu souborů.
Spouští se až po scan_files_v1.0.py.
Podporované přípony a pole
| ext | knihovna | pole v content |
|---|---|---|
| pypdf | pages, encrypted, author, title, subject, creator, producer, created, modified, text_head | |
| docx | python-docx | author, title, subject, last_modified_by, paragraphs, words, created, modified, text_head |
| xlsx, xlsm | openpyxl | total_sheets, sheets[{name,rows,cols}], author, title, subject, last_modified_by, created, modified |
| pptx | python-pptx | slides, author, title, subject, last_modified_by, created, modified, text_head (z prvních 3 snímků) |
| eml | stdlib email | subject, from, to, cc, date, has_attachments, attachments[], body_head |
| msg | extract_msg | totéž co eml |
Společná pole vždy: ok (bool), parsed_at, parser_version, sha256_at_parse. Při chybě error (název výjimky + zpráva).
Inkrementální chování
Zpracují se jen dokumenty kde:
contentchybí, NEBOcontent.parser_version!= aktuální verze (1.0), NEBOcontent.sha256_at_parse!= aktuálnísha256(soubor se změnil)
Při dalším spuštění přidá jen nové/změněné. Při zvýšení verze parseru přeparsuje vše.
Limity (skip)
- PDF nad 500 MB → ok=False, error="too_big_..."
- XLSX nad 200 MB → ok=False
- ostatní nad 300 MB → ok=False
text_head max 2000 znaků.
Spuštění
python U:\PythonProject\Janssen\Soubory\enrich_files_v1.0.py
Plán
Po doběhnutí ověřit content.ok rate, případně doladit (chybové vzory) a teprve pak stavět MCP_SOUBORY server.