Разработать многопоточный скрипт Playwright + FastApi
Нужен скрипт для взаимодействия локального сервера с браузером.
- Каждой новой вкладке браузера присвоен ключ
- Сервер принимает данные в виде словаря: {"key": key, "url": url, "req": req}
- Если ключ отсутствует в словаре вкладок, то:
pages[key] = context.new_page() pages[key].route("**/*", lambda r: r.fulfill(status=200, content_type="text/html", )) pages[key].goto(url) pages[key].wait_for_load_state('domcontentloaded') pages[key].add_script_tag(content=script)
- Возвращаем результат функции вкладки:
return pages[key].evaluate(f"custom('{req}')")
- Условия: Параллельная (одновременная) работа (Multiproccessing или Threading) с возможностью указания максимального числа потоков (или multiprocessing.cpu_count())