2.3 KiB
download_lab_reports_v1.0.py
Verze: 1.0 | Datum: 2026-06-16
Stahuje PDF Lab Reports ze xsp.labcorp.com pro studii 77242113UCO3001
(interní číslo 36940), filtrovaně na 10 českých center.
Princip
Stejný jako download_test_results — Playwright + perzistentní profil
(browser_profile/), jednorázový login (email → Next → heslo → Verify, jinak se
přeskočí), stahování přes UI: klik na odkaz „English" ve sloupci Download
→ POST /api/download/documentFile → expect_download.
Lab Reports je AG Grid s virtuálním renderem (~50 z 298 řádků v DOM).
Skript proto scrolluje viewport po indexech (row-index), u každého řádku
přečte metadata z buněk (col-id: subjectId, accessionNumber, visit,
visitCollectionDate, siteNum, postedDateTime; zdvojený text se odstraní)
a klikne na „English".
Název PDF
Mezery místo podtržítek; první datum = odběr (visitCollectionDate),
posted = datum vystavení (postedDateTime, jen datum) — odliší reissue
stejného reportu (stejný accession, různé Posted):
77242113UCO3001 {odběr} {Site} {Subject} {Visit} {Accession} posted {posted}.pdf
Příklad: 77242113UCO3001 2026-06-11 CZ10009 CZ100092003 Screening 6227323331 posted 2026-06-15.pdf
Při zbylé kolizi názvu se přidá (2), (3), …
Spuštění
python download_lab_reports_v1.0.py --dry-run # jen vypíše názvy, nestahuje
python download_lab_reports_v1.0.py --limit 5 # stáhne jen prvních 5 (test)
python download_lab_reports_v1.0.py # stáhne vše (~298)
Výstup: U:\PythonProject\Janssen\Covance\LabReports\
Konfigurace (v hlavičce skriptu)
SITES— 10 interních ID center (z „GO TO LINK" URL).STUDY=36940,STUDY_CODE=77242113UCO3001.OUT_DIR,LOGIN_URL,PROFILE_DIR.
TODO / k doladění
- Cílový adresář (možná Dropbox / per-studie podsložka).
- Případně přeskakovat už stažené (teď se přidává
(2)).
Pozn. ke spuštění
Skript otevírá viditelné GUI Chrome (Playwright) — musí běžet z terminálu
uživatele s desktop session (PowerShell / dvojklik), ne z headless/agent
prostředí (tam Chromium spadne s exitCode 2147483651).