Если вы хотите использовать Selenium в асинхронном режиме, я бы предложил использовать несколько экземпляров Driver и исполнителя, например так:
import asyncio
from concurrent.futures.thread import ThreadPoolExecutor
from selenium import webdriver
executor = ThreadPoolExecutor(10)
def scrape(url, *, loop):
loop.run_in_executor(executor, scraper, url)
def scraper(url):
driver = webdriver.Chrome("./chromedriver")
driver.get(url)
loop = asyncio.get_event_loop()
for url in ["https://google.de"] * 2:
scrape(url, loop=loop)
loop.run_until_complete(asyncio.gather(*asyncio.all_tasks(loop)))
Обратите внимание, что вы можете запускать селен в автономном режиме, поэтомуне нужно создавать весь GUI для вызова некоторого простого URL.