Пакет Python pywinauto может ждать любого диалога и автоматически нажимать кнопки. Но он способен только для родных и некоторых .NET-приложений. У вас могут быть проблемы с нажатием кнопки WPF (возможно, кнопка QT доступна для клика - не проверяется), но в этом случае код, например app.DialogTitle.Wait('ready').SetFocus(); app.DialogTitle.TypeKeys('{ENTER}')
, может помочь. Ваш случай довольно прост и, вероятно, достаточно нескольких трюков с pywinauto. У вашего «приложения с всплывающими» 64-битными или 32-битными функциями
Wait
и WaitNot
есть параметр timeout . Но если вам нужен точно прослушиватель с потенциально бесконечным циклом, ожидающим всплывающие окна, хорошее направление - глобальные крючки Windows ( pyHook может прослушивать события мыши и keybd, но не может слушать диалог открытия). Я попытаюсь найти мой прототип, который сможет обнаружить новые окна. Он использует обработчики событий API UI Automation ... и ... ops ... для этого требуется IronPython. Я до сих пор не знаю, как настроить обработчик UI Automation с COM-интерфейсом со стандартного CPython.
Вам необходимо указать значение для обоих, когда день не понедельник. Если вы посмотрите на документы , это то, что называется x
и y
. Прямо сейчас вы предоставляете только что-то для первого. Допустим, все не понедельники идут в группу 1, тогда у вас есть:
df['Group'] = np.where(df['Day'] == 'Monday', 0, 1)
Так же просто, как
df['Group']=(df['Day'] != 'Monday').astype(int)