프로그래밍 연습하기

Python Selenium Firefox 사용 시 Message: binary is not a Firefox executable 에러 본문

Python

Python Selenium Firefox 사용 시 Message: binary is not a Firefox executable 에러

john.k 2023. 8. 19. 14:09
반응형

WSL로 파이썬 셀레니움을 사용하려던 중 다음과 같은 에러를 봤습니다.

selenium.common.exceptions.InvalidArgumentException: Message: binary is not a Firefox executable

분명히 정확한 위치의 파이어폭스 바이너리 경로를 넣어줬는데 에러가 나서 감을 못 잡고 있었는데,

한참 찾다 다음과 같은 방법으로 해결할 수 있었습니다.

 

options = Options()
options.add_argument('--no-sandbox')
options.add_argument('--disable-dev-shm-usage')

geckodriver_path = "/snap/bin/geckodriver"  # specify the path to your geckodriver
driver_service = Service(executable_path=geckodriver_path)

self.driver = webdriver.Firefox(options=options, service=driver_service)

위와 같이 옵션에 argument를 추가해주니 정상적으로 작동했습니다.

 

다음 답변을 참고했습니다.

https://stackoverflow.com/questions/76846675/selenium-ubuntu22-bug-message-binary-is-not-a-firefox-executable

 

Selenium/Ubuntu22 bug "Message: binary is not a Firefox executable"

Curious, does anyone here know how I might fix this Selenium/Ubuntu22 bug? Got a Python3 script that still runs fine on Debian 12, but I'm trying to use it on Ubuntu22 with firefox and geckodriver ...

stackoverflow.com

원래는 그냥 Chrome을 사용하려고 했었는데, 제가 시도하려는 환경은 ARM64 Ubuntu인데 크롬은 ARM64 Linux용 빌드가 없는 것 같더라구요. 그래서 Firefox를 사용하려다 보니 이런 에러를 만나게 되었습니다.

 

Ubuntu에서 Firefox을 사용해보려는 중에도 꽤 많이 헤멨는데 이것저것 닥치는대로 해보다보니 정리가 안되서 과정 공유는 좀 힘들 것 같네요.

반응형
Comments