arsenic.services

arsenic.services.stop_process(process)

Coroutine that stops a process.

Parameters:process (asyncio.subprocess.Process) – Process to stop
arsenic.services.sync_factory(func)

Factory function which returns a coroutine which calls the function passed in. Useful to wrap a non-coroutine function as a coroutine for APIs that require coroutines.

arsenic.services.subprocess_baed_service(cmd, service_url, log_file)

Helper function for services that run a local subprocess.

Parameters:
  • cmd (List[str]) – Command to run.
  • service_url (str) – URL at which the service will be available after starting.
  • log_file (io.TextIO) – Log file for the service.
Return type:

arsenic.webdriver.WebDriver

class arsenic.services.Service

Abstract base class for services.

start()

Abstract method to start a service.

Return type:arsenic.webdriver.WebDriver
class arsenic.services.Geckodriver(log_file=os.devnull, binary='geckodriver')

Geckodriver service. Requires geckodriver 0.17 or higher.

Parameters:
  • log_file (io.TextIO) – Log file to use.
  • binary (str) – Path to the geckodriver binary.
  • version_check (bool) – Optional flag to disable version checking.
class arsenic.services.Chromedriver(log_file=os.devnull, binary='chromedriver')

Chromedriver service.

Parameters:
  • log_file (io.TextIO) – Log file to use.
  • binary (str) – Path to the chromedriver binary.
class arsenic.services.Remote(url, auth=None)

Remote service.

Parameters:
  • url (str) – URL of the remote webdriver.
  • auth (arsenic.http.Auth or str.) – Optional authentication.
class arsenic.services.PhantomJS(log_file=os.devnull, binary='phantomjs')

PhantomJS service.

Parameters:
  • log_file (io.TextIO) – Log file to use.
  • binary (str) – Path to the PhantomJS binary.
class arsenic.services.IEDriverServer(log_file=os.devnull, binary='IEDriverServer.exe')

Internet Explorer service.

Parameters:
  • log_file (io.TextIO) – Log file to use.
  • binary (str) – Path to the IEDriverServer binary.