Files
janssen/Python-runner/1_parse_emails_graph_v1.4.md
2026-06-05 21:21:30 +02:00

2.0 KiB

1_parse_emails_graph_v1.4.py

Krok 1 pipeline — import emailů z libovolné schránky přes Microsoft Graph API do MongoDB (emaily.<mailbox>). Čte všechny složky rekurzivně. Upsert podle Message-ID → bezpečné přerušit a opakovat.

Argumenty

Argument Povinný Hodnoty Default Popis
--mailbox ano e-mail Schránka = název kolekce v Mongo
--mode ne full / new-only / sync full full = plný upsert; new-only = jen nové; sync = aktualizuje is_read/flag_status/categories/folder_path u existujících + importuje nové
--folder ne název složky (všechny) Jen jedna složka (např. Inbox)
--limit N ne int 0 (bez limitu) Zpracuje jen prvních N zpráv (test)
--no-indexes ne flag false Nevytváří indexy na konci

Varianty volání

# První plný import schránky (vše):
docker exec -it python-runner python /scripts/1_parse_emails_graph_v1.4.py --mailbox ordinace@buzalkova.cz

# Test na 50 zprávách bez vytváření indexů:
docker exec -it python-runner python /scripts/1_parse_emails_graph_v1.4.py --mailbox ordinace@buzalkova.cz --limit 50 --no-indexes

# Jen nové emaily (po prvním importu):
docker exec -it python-runner python /scripts/1_parse_emails_graph_v1.4.py --mailbox ordinace@buzalkova.cz --mode new-only

# Pravidelný sync (nové + aktualizace flagů u existujících) na pozadí, log do souboru:
docker exec -d python-runner bash -c "python /scripts/1_parse_emails_graph_v1.4.py --mailbox ordinace@buzalkova.cz --mode sync > /scripts/parse_emails.log 2>&1"

# Import jen složky Inbox:
docker exec -it python-runner python /scripts/1_parse_emails_graph_v1.4.py --mailbox ordinace@buzalkova.cz --folder Inbox

# Test 10 emailů z konkrétní složky:
docker exec -it python-runner python /scripts/1_parse_emails_graph_v1.4.py --mailbox ordinace@buzalkova.cz --folder "Sent Items" --limit 10

Sledování průběhu

docker exec -it python-runner tail -f /scripts/parse_emails.log