Je suis capable d'envoyer des clés pour gérer le popup d'authentification d'un site en utilisant Selenium et win32com.client. Cela fonctionne correctement lorsque je cours le code manuellement (en exécutant un bloc-notes Jupyter).Authentification Popup utilisant Selenium Webdriver Python
L'erreur se produit lorsque je convertis .ipynb en .py et planifie l'exécution automatique à l'aide de Windows Task Scheduler. Il se coince dans la fenêtre contextuelle d'authentification.
J'ai essayé les options ci-dessous:
1.) Cela fonctionne bien dans le cahier
shell = comclt.Dispatch("WScript.Shell")
driver = webdriver.Chrome(chrome_path)
driver.maximize_window()
driver.get(url)
shell.SendKeys("username", + "{TAB}" + "password" + "{TAB}" + "{ENTER}")
2.) Juste essayer quelques solutions de rechange et son fonctionnement dans le cahier
shell = comclt.Dispatch("WScript.Shell")
driver = webdriver.Chrome(chrome_path)
driver.maximize_window()
driver.get(url)
try:
alert = driver.switch_to_alert().accept()
shell.SendKeys("username", + "{TAB}" + "password" + "{TAB}" + "{ENTER}")
except NoAlertPresentException:
shell.SendKeys("username", + "{TAB}" + "password" + "{TAB}" + "{ENTER}")
Est y a-t-il une meilleure approche sur la façon d'exécuter ce code (.py) automatiquement à l'aide du planificateur de tâches?
Mises à jour: Le code fonctionne en .py seulement quand il y a une session de bureau actif. Chaque fois que l'ordinateur détecte une inactivité avant l'exécution planifiée, la tâche ne passe pas. Est-il possible de déverrouiller le système et de le verrouiller après le processus? BTW, j'ai ajouté pywinauto pour réduire la console Windows et SetFocus à Chrome. Je vous remercie! –