2.0 KiB
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 | — | 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