Selenium과 win32com.client를 사용하여 사이트의 인증 팝업을 처리하는 키를 보낼 수 있습니다. 코드를 수동으로 실행할 때 (Jupyter Notebook 실행) 잘 작동합니다.Selenium Webdriver Python을 사용하는 인증 팝업
.ipynb를 .py로 변환하고 Windows 작업 스케줄러를 사용하여 자동으로 실행되도록 예약하면 오류가 발생합니다. 인증 팝업 창에 갇히게됩니다.
나는 아래의 옵션 시도 :
1.)이 노트북에서 잘 작동을
shell = comclt.Dispatch("WScript.Shell")
driver = webdriver.Chrome(chrome_path)
driver.maximize_window()
driver.get(url)
shell.SendKeys("username", + "{TAB}" + "password" + "{TAB}" + "{ENTER}")
2) 그냥
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}")
인가 노트북에 몇 가지 대안과 그 작업을 시도 작업 스케줄러를 사용하여이 코드 (.py)를 자동으로 실행하는 방법에 대한 더 나은 접근법이 있습니까? 잘 .ipynb 및 평에
업데이트 : 액티브 데스크톱 세션이있는 경우에만 코드는 평에서 작동합니다. 컴퓨터가 예정된 실행 전에 비활성 상태를 감지 할 때마다 작업이 강제 적용되지 않습니다. 프로세스를 잠금 해제하고 프로세스를 잠글 수있는 방법이 있습니까? BTW, 콘솔 윈도우와 SetFocus를 최소화하기 위해 pywinauto를 추가했습니다. 고맙습니다! –