Add Outlook/Soubory/Clario/Feasibility scripts and reports; ignore Incoming, Outlook downloads & profile

This commit is contained in:
2026-06-03 16:15:19 +02:00
parent 61c6aeea23
commit 6c57ab3ae6
36 changed files with 4949 additions and 0 deletions
+54
View File
@@ -0,0 +1,54 @@
# download_all_inbox_eml_v1.0
**Verze:** 1.0
**Datum:** 2026-06-03
## Cíl
Stáhnout zprávy z Outlook Inboxu jako `.eml` soubory.
## Klíčový princip — virtualizovaný seznam
OWA drží v DOM jen ~16 viditelných řádků. `nth(19)` proto nefunguje.
Řešení: **navigace klávesnicí** — vybrat první zprávu a opakovaně mačkat
`ArrowDown`. Outlook sám scrolluje a dorenderovává. Aktuálně vybraná zpráva
je vždy `[role="option"][aria-selected="true"]`.
### Oddělovače sekcí (Today / Yesterday / This week)
Jsou to `role="button"` `aria-expanded` prvky, ne zprávy. Když na nich kurzor
po `ArrowDown` zastaví, **žádná** zpráva nemá `aria-selected`
(`selected.count() == 0`). Takový krok se musí jen přeskočit (`ArrowDown` dál),
NEpočítat jako zprávu a NEukončovat smyčku. Konec seznamu se pozná až podle
toho, že se `aria-label` vybrané zprávy přestane měnit (`no_progress`).
Alternativa: v OWA přepnout řazení na "Show as Messages" (bez seskupení podle
data) — pak seznam žádné oddělovače nemá.
## Postup
1. Otevře OWA z persistent profilu (`outlook_profile/`).
2. Přejde do Inboxu.
3. Vybere první zprávu.
4. Smyčka: stáhne vybranou (pravý klik → Download → Download as EML) →
`ArrowDown` → opakuje, dokud se výběr přestane hýbat (= konec seznamu).
## Nastavení (v hlavičce skriptu)
- `LIMIT` — max počet **uložených zpráv** (`None` = celý Inbox). Aktuálně `30`.
- `SKIP_EXISTING``True` = soubor stejného jména v `downloads/` znovu neuloží;
`False` (aktuální) = existující soubor **smaže a uloží nový** (přepis).
## Výstup
`downloads/<název_z_OWA>.eml`. Při kolizi jmen:
- `SKIP_EXISTING=False` → starý soubor se smaže a přepíše novým,
- `SKIP_EXISTING=True` → soubor se ponechá, nový se neuloží.
## Spuštění
```
python download_all_inbox_eml_v1.0.py
```
## Poznámky / omezení
- Celý Inbox (tisíce zpráv) přes UI je pomalý a křehký — pro velký objem
nejdřív zúžit hledáním/filtrem v OWA. `LIMIT=30` je rozumný test.
- `SKIP_EXISTING` nešetří čas: identitu zprávy známe až z názvu **po** stažení,
takže pravý klik + download proběhne pro každou zprávu; jen se nepřepíše soubor.
- Konec seznamu se pozná tak, že se `aria-label` vybrané zprávy přestane měnit
(počítadlo `no_progress`, práh `NO_PROGRESS_MAX = 4`).
- Okno se po doběhnutí nezavře, čeká na Enter.