z230
This commit is contained in:
@@ -14,6 +14,8 @@ import winreg
|
||||
from datetime import datetime
|
||||
from pathlib import Path
|
||||
|
||||
sys.path.insert(0, os.path.join(os.path.dirname(__file__), "..", "..", ".."))
|
||||
from Knihovny.najdi_dropbox import get_dropbox_root
|
||||
|
||||
LOGIN_URL = "https://portal.vozp.cz/app/prihlaseni"
|
||||
BASE_URL = "https://portal.vozp.cz"
|
||||
@@ -22,7 +24,7 @@ DOWNLOAD_URL = f"{BASE_URL}/html/prehled-zprav-ve-schrankach/zobrazit-prilohu"
|
||||
|
||||
CHROME_PROFILE = os.path.abspath(os.path.join(os.path.dirname(__file__), "chrome_profile"))
|
||||
COOKIES_FILE = os.path.abspath(os.path.join(os.path.dirname(__file__), "vozp_cookies.json"))
|
||||
DOWNLOAD_DIR = os.path.join(os.path.dirname(__file__), "Staženo")
|
||||
DOWNLOAD_DIR = os.path.join(get_dropbox_root(), "Ordinace", "Dokumentace_ke_zpracování", "Zúčtovací zprávy", "201 VoZP")
|
||||
|
||||
# Všechny schránky — ID-segment : zobrazovaný název
|
||||
SCHRANKY = {
|
||||
@@ -253,6 +255,7 @@ def main() -> None:
|
||||
ignore_https_errors=True,
|
||||
args=["--force-renderer-accessibility"],
|
||||
)
|
||||
logged_in = False
|
||||
try:
|
||||
loaded = load_cookies(context)
|
||||
print(f"Cookies načtené z JSON: {loaded}")
|
||||
@@ -262,6 +265,7 @@ def main() -> None:
|
||||
if not ensure_logged_in(page, context):
|
||||
return
|
||||
|
||||
logged_in = True
|
||||
already = set(os.listdir(DOWNLOAD_DIR))
|
||||
print(f"V archivu: {len(already)} souborů.\n")
|
||||
|
||||
@@ -279,8 +283,9 @@ def main() -> None:
|
||||
print(f"Hotovo. Celkem staženo: {total_dl}, přeskočeno: {total_skip}")
|
||||
|
||||
finally:
|
||||
saved = save_cookies(context)
|
||||
print(f"Uloženo {saved} VoZP cookies.")
|
||||
if logged_in:
|
||||
saved = save_cookies(context)
|
||||
print(f"Uloženo {saved} VoZP cookies.")
|
||||
context.close()
|
||||
|
||||
|
||||
|
||||
@@ -17,6 +17,9 @@ from pathlib import Path
|
||||
|
||||
import requests as req
|
||||
|
||||
sys.path.insert(0, os.path.join(os.path.dirname(__file__), "..", "..", ".."))
|
||||
from Knihovny.najdi_dropbox import get_dropbox_root
|
||||
|
||||
LOGIN_URL = "https://portal.vozp.cz/app/prihlaseni"
|
||||
BASE_URL = "https://portal.vozp.cz"
|
||||
INBOX_URL = f"{BASE_URL}/app/prehled-zprav-ve-schrankach"
|
||||
@@ -24,7 +27,7 @@ DOWNLOAD_URL = f"{BASE_URL}/html/prehled-zprav-ve-schrankach/zobrazit-prilohu"
|
||||
|
||||
CHROME_PROFILE = os.path.abspath(os.path.join(os.path.dirname(__file__), "chrome_profile"))
|
||||
COOKIES_FILE = os.path.abspath(os.path.join(os.path.dirname(__file__), "vozp_cookies.json"))
|
||||
DOWNLOAD_DIR = os.path.join(os.path.dirname(__file__), "Staženo")
|
||||
DOWNLOAD_DIR = os.path.join(get_dropbox_root(), "Ordinace", "Dokumentace_ke_zpracování", "Zúčtovací zprávy", "201 VoZP")
|
||||
|
||||
SCHRANKY = {
|
||||
"171-schranka-poskytovatele-zdravotnich-sluzeb": "Schránka PZS",
|
||||
@@ -264,6 +267,7 @@ def main() -> None:
|
||||
ignore_https_errors=True,
|
||||
args=["--force-renderer-accessibility"],
|
||||
)
|
||||
logged_in = False
|
||||
try:
|
||||
loaded = load_cookies(context)
|
||||
print(f"Cookies načtené z JSON: {loaded}")
|
||||
@@ -273,6 +277,7 @@ def main() -> None:
|
||||
if not ensure_logged_in(page, context):
|
||||
return
|
||||
|
||||
logged_in = True
|
||||
session = make_requests_session(context)
|
||||
already = set(os.listdir(DOWNLOAD_DIR))
|
||||
print(f"V archivu: {len(already)} souborů.\n")
|
||||
@@ -289,8 +294,9 @@ def main() -> None:
|
||||
print(f"Hotovo. Celkem nových souborů: {total_dl}")
|
||||
|
||||
finally:
|
||||
saved = save_cookies(context)
|
||||
print(f"Uloženo {saved} VoZP cookies.")
|
||||
if logged_in:
|
||||
saved = save_cookies(context)
|
||||
print(f"Uloženo {saved} VoZP cookies.")
|
||||
context.close()
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,35 @@
|
||||
"""
|
||||
Přihlásí se na portál VoZP a stáhne nové zprávy.
|
||||
|
||||
Kombinuje 01_prihlaseni.py + 03_stahuj_nove.py do jednoho spuštění.
|
||||
|
||||
POUŽITÍ:
|
||||
python 04_prihlaseni_a_stahuj_nove.py
|
||||
"""
|
||||
|
||||
import subprocess
|
||||
import sys
|
||||
import os
|
||||
|
||||
DIR = os.path.dirname(os.path.abspath(__file__))
|
||||
|
||||
|
||||
def run(script: str) -> None:
|
||||
result = subprocess.run(
|
||||
[sys.executable, os.path.join(DIR, script)],
|
||||
check=False,
|
||||
)
|
||||
if result.returncode != 0:
|
||||
raise SystemExit(f"Skript {script} skončil s chybou (kód {result.returncode})")
|
||||
|
||||
|
||||
def main() -> None:
|
||||
print("=== Přihlášení ===")
|
||||
run("01_prihlaseni.py")
|
||||
|
||||
print("\n=== Stahování nových zpráv ===")
|
||||
run("03_stahuj_nove.py")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
Reference in New Issue
Block a user