본문 바로가기
파이썬 오류 해결

[Selenium] Message: unknown error: cannot determine loading status from unknown error: unexpected command response (Session info: chrome=103.0.5060.114) 파이썬 오류

by 퍼포먼스마케팅코더 2022. 8. 1.
반응형

현재 크롬으로 Selenium 실행시 아래와 같은 문제점이 발생 해당 문제점은 크롬 자체적으로 나오는 버그로, 자동 업데이트를 실행하여 나온 결과이다. 이에 102로 다운그레이드 방법도 있긴 하나 임시적으로 사용시엔 하기의 코드를 넣어주면은 해결된다. 먼저 밑의 내용을 살펴보자.

파이썬 오류  문구

Message: unknown error: cannot determine loading status from unknown error: unexpected command response (Session info: chrome=103.0.5060.114)

파이썬 오류  해결 방안

option.add_argument("--incognito") 크롬 설정에서 해당 내 코드를 넣어주면은 실행은 된다. 다만 부분적으로 실행되는 부분이 있기에 완벽하게 정상 작동까진 안된다. 그저 104로 베타 설치를 해서 실행하는 방법도 있으나, 셀레늄을 자주 실행하진 않을 것인지라 임시방편으로 해당 코드를 넣어서 진행하기로 함.

warnings.filterwarnings('ignore')
try:
    shutil.rmtree(r"c:\chrometemp")  #쿠키 / 캐쉬파일 삭제
except FileNotFoundError:
    pass
subprocess.Popen(r'C:\Program Files\Google\Chrome\Application\chrome.exe --remote-debugging-port=9222 --user-data-dir="C:\chrometemp"') # 디버거 크롬 구동
option = Options()
option.add_experimental_option("debuggerAddress", "127.0.0.1:9222")
option.add_argument("--incognito") #추가 (이게 있어야 정상 작동됨, 다만 부분적으로 해결)
chrome_ver = chromedriver_autoinstaller.get_chrome_version().split('.')[0]
try:
    driver = webdriver.Chrome(f'./{chrome_ver}/chromedriver.exe', options=option)
except:
    chromedriver_autoinstaller.install(True)
    driver = webdriver.Chrome(f'./{chrome_ver}/chromedriver.exe', options=option)

driver.maximize_window() #최대창
action = ActionChains(driver)  #액션지정
time.sleep(1)
driver.implicitly_wait(10)

 

또 한가지로 만일 또 해당 에러가 나올 경우 아래 내용까지 추가로 넣어 진행해본다.

option.add_argument("--incognito") #추가 (이게 있어야 정상 작동됨, 다만 부분적으로 해결)
user_agent = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36'  #추가
option.add_argument(f'user-agent={user_agent}') #추가

 

파이썬 오류  최종 문제해결

해당 문제는 아주 간단했다. 다음과 같이 try except 문구로 예외처리를 해주면은 정상적으로 다음 것을 실행이 가능하다. 그래서 예외처리로 빼주는게 가장 확실하게 처리가 빠르게 진행할 수 있다. 그럼 크롬 102, 104 버전으로 다시 깔아서 하지 않아도 된다. 해당 오류 문구가 뜰시 해당 부문만 try except 문구로만 처리해주면 된다. 그럼 에러 해결 끝.

try :
    login_btn.click() #클릭
except :
    pass
반응형

댓글