python - how run selenium with chrome in docker -
i installed google-chrome in docker, when run python script of selenium, failed this:
automation@1c17781fef0c:/topology-editor/test$ python test.py traceback (most recent call last): file "test.py", line 27, in <module> browser = webdriver.chrome() file "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/chrome/webdriver.py", line 69, in __init__ desired_capabilities=desired_capabilities) file "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 98, in __init__ self.start_session(desired_capabilities, browser_profile) file "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 185, in start_session response = self.execute(command.new_session, parameters) file "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 249, in execute self.error_handler.check_response(response) file "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/remote/errorhandler.py", line 194, in check_response raise exception_class(message, screen, stacktrace) selenium.common.exceptions.webdriverexception: message: unknown error: chrome failed start: crashed (driver info: chromedriver=2.31.488763 (092de99f48a300323ecf8c2a4e2e7cab51de5ba8),platform=linux 4.4.0-83-generic x86_64) and if run google-chrome directly in docker, shows below:
automation@1c17781fef0c:/topology-editor/test$ google-chrome failed move new namespace: pid namespaces supported, network namespace supported, failed: errno = operation not permitted trace/breakpoint trap (core dumped) automation@1c17781fef0c:/topology-editor/test$ system:
$ uname -a linux 1c17781fef0c 4.4.0-83-generic #106-ubuntu smp mon jun 26 17:54:43 utc 2017 x86_64 x86_64 x86_64 gnu/linux $ google-chrome --version google chrome 60.0.3112.78 $ chromedriver --version chromedriver 2.31.488763 (092de99f48a300323ecf8c2a4e2e7cab51de5ba8)
you need launch standalone chrome browser
docker run -d -p 4444:4444 selenium/standalone-chrome and in python script launch browser using remote webdriver
from selenium import webdriver selenium.webdriver.common.desired_capabilities import desiredcapabilities driver = webdriver.remote("http://127.0.0.1:4444/wd/hub", desiredcapabilities.chrome) if want can launch selenium grid hub
Comments
Post a Comment