Files
janssen/Feasibility/TRASH/sipiq_download_v2.0.md
2026-06-19 14:28:54 +02:00

48 lines
2.0 KiB
Markdown

# sipiq_download_v2.0
**Verze:** 2.0 · **Datum:** 2026-06-19
## Co dělá
Automaticky stáhne SIPIQ survey report (CSV) z Qualtrics přes **Playwright**.
Přihlásí se (username/password), otevře Data & Analysis studie 77242113UCO3002
(`SV_9AdeNaNyohp5fNQ`), spustí **Export & Import → Export Data → CSV → Download**
a stažený soubor uloží s timestampem do `U:\Dropbox\!!!Days\Downloads Z230\`.
## Proč Playwright (a ne API)
Účet `77242113uco3002_sipiq` **nemá povolené API** na úrovni účtu. Interní UI
export běží jen na **session cookies** a vrací **interní `fileUrl`**
(`riptooth.service.consul:9000`), který je zvenčí nedostupný — čistě `requests`
proto soubor nestáhne (start+poll fungují, samotný download ne). Playwright se
přihlásí sám (řeší expiraci session) a stažení nechá na prohlížeči
(`expect_download`). Verze 1.0 (requests/API) je v `TRASH`.
## Konfigurace (root `.env`)
```
QUALTRICS_USER=77242113uco3002_sipiq
QUALTRICS_PASS=77242113uco3002_sipiq
```
Fallback na zabudované hodnoty, pokud `.env` chybí.
## Použití
```
"U:\PythonProject\Janssen\.venv\Scripts\python.exe" sipiq_download_v2.0.py
"U:\PythonProject\Janssen\.venv\Scripts\python.exe" sipiq_download_v2.0.py --headless
```
- Profil prohlížeče: `Feasibility\qualtrics_profile\` (persistent) → po prvním
přihlášení se login přeskakuje.
- Default běh je **headed** (vidíš okno); `--headless` pro scheduler.
- Při chybě se uloží screenshot `_dl_99_error.png`.
## Ověřeno 19JUN2026
CSV: 247 sloupců, 3 hlavičkové řádky (Qcode / text / `ImportId`), 323 odpovědí,
498 110 B — shodné s ručním exportem. Modal defaulty sedí: **CSV**,
☑ Download all fields, **Export labels** (= co `sipiq_import` potřebuje).
## Návazný import
Výstup jde do `Downloads Z230`. Import do Mongo se spouští samostatně — buď
soubor přesuň do `77242113UCO2001\ImportSIPIQcompled\` a spusť folder workflow,
nebo přímo na soubor:
```
"U:\PythonProject\Janssen\.venv\Scripts\python.exe" sipiq_import_v1.3.py --csv "<cesta k CSV>"
```