Python + Selenium + multiprocessing + обмен данными и синхронизация выполнения между процессами?
Помогите пожалуйста реализовать следующую схему на python+selenium+мультипроцессинг
Раньше мультипроцессинг использовал только через pool.map(), без особых заморочек, но тут не могу сообразить.
1. Браузер1 заходит на сайт1 и ожидает(менеждер я так понимаю) пока другие браузеры(2-10) не отправят команду своей готовности
2. Браузер2-10(воркеры) открывают сайты2 доходят до нужной формы и сообщают Браузеру1 о готовности
3. Браузер1 после получения состояния готовности браузеров2-10 получает данные с сайта1 и отправляет их браузерам2-10
4. Браузер2-10 вводят полученные данные и максимально ОДНОВРЕМЕННО отправляют заполненную форму на сайте2.
Не могу понять как происходит обмен данными между процессами и как сделать одновременное нажатие на кнопку(отправку формы) в браузерах2-10?
я не представляю как это сделать поэтому и пишу тут)) javedimka, опускаем сетевые задержки и прочее.
нужно простое нажатие на кнопку в определенное время всеми браузерами одновременно, погрешность даже в 5сек не критична на данный момент. но это решение упирается в первый вопрос обмен данными между процессами, чтобы передать браузерам точное время для клика.
from time import sleep
from multiprocessing import Process, Event
def press_button(event):
event.wait()
submit_form()
ev = Event()
for browser in range(8):
Process(target=press_button, args=(ev,)).start()
time.sleep(10) # Ждать пока открыто окно
ev.set() # все 8 функций разблокируются и вызовут submit_form
отлично с "одновременным нажатием" есть вариант)), а как быть с обменом данных(текст,числа) между процессами по ходу выполнения?... начинал разбираться с pool + Manager но так и не срослось, запутался )))