1919DASHBOARD_URL = "https://www.alditalk-kundenportal.de/portal/auth/buchungsuebersicht/"
2020UBERSICHT_URL = "https://www.alditalk-kundenportal.de/portal/auth/uebersicht/"
2121
22- VERSION = "1.0.9 " # Deine aktuelle Version
22+ VERSION = "1.1.0 " # Deine aktuelle Version
2323
2424REMOTE_VERSION_URL = "https://raw.githubusercontent.com/Dinobeiser/AT-Extender/main/version.txt" # Link zur Version
2525REMOTE_SCRIPT_URL = "https://raw.githubusercontent.com/Dinobeiser/AT-Extender/main/at-extender.py" # Link zum neuesten Skript
2626
2727USER_AGENT = "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:137.0) Gecko/20100101 Firefox/137.0"
2828HEADLESS = True
2929
30- # Konfiguration aus der config.json Datei laden
30+
3131def load_config ():
3232 with open ("config.json" , "r" ) as f :
3333 config = json .load (f )
34- return config
3534
35+ valid_browsers = ["chromium" , "firefox" , "webkit" ]
36+ browser = config .get ("BROWSER" , "chromium" ).lower ()
37+
38+ if browser not in valid_browsers :
39+ logging .warning (f"Ungültiger Browserwert '{ browser } ' in config.json – fallback auf 'chromium'" )
40+ browser = "chromium"
3641
37- config . setdefault ( "BROWSER" , "chromium" )
42+ config [ "BROWSER" ] = browser
3843 return config
3944
40- # Konfigurationsvariablen aus der JSON-Datei laden
45+
4146config = load_config ()
4247
4348RUFNUMMER = config ["RUFNUMMER" ]
@@ -48,11 +53,10 @@ def load_config():
4853TELEGRAM = config ["TELEGRAM" ]
4954SLEEP_MODE = config ["SLEEP_MODE" ]
5055SLEEP_INTERVAL = config ["SLEEP_INTERVAL" ]
51-
56+ BROWSER = config [ "BROWSER" ]
5257
5358TELEGRAM_URL = f"https://api.telegram.org/bot{ BOT_TOKEN } /sendMessage"
5459
55-
5660def send_telegram_message (message , retries = 3 ):
5761 if TELEGRAM == "1" :
5862 for attempt in range (retries ):
@@ -129,12 +133,10 @@ def login_and_check_data():
129133 with sync_playwright () as p :
130134 for attempt in range (3 ): # 3 Versuche, falls Playwright abstürzt
131135 try :
132- logging .info ("Starte Browser..." )
133- browser_type = config .get ("BROWSER" , "chromium" ).lower ()
134-
135- if browser_type == "firefox" :
136+ logging .info (f"Starte { BROWSER } ..." )
137+ if BROWSER == "firefox" :
136138 browser = p .firefox .launch (headless = HEADLESS )
137- elif browser_type == "webkit" :
139+ elif BROWSER == "webkit" :
138140 browser = p .webkit .launch (headless = HEADLESS )
139141 else :
140142 browser = p .chromium .launch (headless = HEADLESS )
@@ -220,17 +222,20 @@ def sleep_interval(config):
220222 mode = config .get ("SLEEP_MODE" , "random" ) # "fixed" oder "random"
221223
222224 if mode == "fixed" :
223- # Hole den Wert für das feste Intervall aus der config.json
224- interval = config .get ("SLEEP_INTERVAL" , 70 ) # Standard auf 70 Sekunden, wenn nicht gesetzt
225+ try :
226+ interval = int (config .get ("SLEEP_INTERVAL" , 70 )) # Sicherstellen, dass es ein int ist
227+ except ValueError :
228+ logging .warning ("⚠️ Ungültiger SLEEP_INTERVAL-Wert – setze auf Standard 90 Sekunden." )
229+ interval = 90
230+
225231 if interval < 60 :
226232 print ("⚠️ Intervall zu kurz, auf 90 Sekunden gesetzt." )
227233 interval = 90 # Mindestintervall von 90 Sekunden
228234 elif mode == "random" :
229- # Wenn SLEEP_MODE = random, dann zufälliger Wert zwischen 300 und 500 Sekunden
230235 interval = random .randint (300 , 500 )
231236 else :
232237 print ("⚠️ Ungültiger SLEEP_MODE, verwende Standard 'random'." )
233- interval = random .randint (300 , 500 ) # Standard zufälliger Wert zwischen 300 und 500 Sekunden
238+ interval = random .randint (300 , 500 )
234239
235240 logging .info (f"💤 Warte { interval } Sekunden..." )
236241 time .sleep (interval )
0 commit comments