
Asynchronous webdriver client built on asyncio.
Let's run a local Firefox instance.
from arsenic import get_session from arsenic.browsers import Firefox from arsenic.services import Geckodriver
async def example(): # Runs geckodriver and starts a firefox session async with get_session(Geckodriver(), Firefox()) as session: # go to example.com await session.get('http://example.com') # wait up to 5 seconds to get the h1 element from the page h1 = await session.wait_for_element(5, 'h1') # print the text of the h1 element print(await h1.get_text())
Alternatively also other drivers can be run, e.g. Chromedriver or MSEdgeDriver