From 95d26a1e97c189a730afa1f97c61cc664b896ff6 Mon Sep 17 00:00:00 2001 From: eneller Date: Wed, 2 Jul 2025 09:38:21 +0200 Subject: [PATCH] chore: minor cleanup --- src/uulm_utils/campusonline.py | 4 +++- src/uulm_utils/coronang.py | 5 +++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/uulm_utils/campusonline.py b/src/uulm_utils/campusonline.py index f4ee7d7..635f276 100644 --- a/src/uulm_utils/campusonline.py +++ b/src/uulm_utils/campusonline.py @@ -8,8 +8,10 @@ from enum import Enum import csv from uulm_utils.common import cli, browser_options, run_playwright + Selection = Enum('Selection', ['TREE_WALK', 'TREE_LEAF', 'ITEM_SELECTED']) CAMPUSONLINE_LOC = 'li.treelist > a' +CAMPUSONLINE_URL = 'https://campusonline.uni-ulm.de' async def selection_or_walk(locators: list[Locator]): option_walk = questionary.Choice(title= 'Walk the Tree from here', value=Selection.TREE_WALK, checked=True) @@ -41,7 +43,7 @@ async def campusonline(filename, username, password, headless): async for browser, context in run_playwright(headless): page = await context.new_page() # login - await page.goto("https://campusonline.uni-ulm.de") + await page.goto(CAMPUSONLINE_URL) await page.get_by_role("textbox", name="Benutzerkennung").click() await page.get_by_role("textbox", name="Benutzerkennung").fill(username) await page.get_by_role("textbox", name="Passwort").fill(password) diff --git a/src/uulm_utils/coronang.py b/src/uulm_utils/coronang.py index a6de1f3..102ab13 100644 --- a/src/uulm_utils/coronang.py +++ b/src/uulm_utils/coronang.py @@ -6,6 +6,8 @@ from typing import cast from uulm_utils.common import cli, fcfs_options, browser_options, run_playwright, logger +CORONANG_VERSION='v1.8.00' +CORONANG_URL="https://campusonline.uni-ulm.de/CoronaNG/user/mycorona.html" @cli.command() @fcfs_options @@ -16,8 +18,6 @@ async def coronang(target_times, username, password, headless, offset): Automatically register for courses on CoronaNG by specifying one or more timestamps of the format "HH:MM:SS". Please beware that CoronaNG only allows one active session at all times. ''' - CORONANG_VERSION='v1.8.00' - CORONANG_URL="https://campusonline.uni-ulm.de/CoronaNG/user/mycorona.html" logger.debug('Parsed input times as %s', target_times) before_seconds = timedelta(seconds=offset) target_times = sorted(list(target_times)) @@ -64,6 +64,7 @@ async def coronang(target_times, username, password, headless, offset): await page.get_by_role("table", name="Ihre Beobachtungen. Sie kö").get_by_role("button").click() await page.get_by_role("table", name="Ihre Beobachtungen. Sie kö").get_by_role("combobox").select_option("5") await page.get_by_role("cell", name="An Markierten teilnehmen Ausf").get_by_role("button").click() + #async with page.expect_response() await page.reload() # window ended? # check window of offset before and after target