Я пытаюсь автоматизировать публикацию отчетов Power BI в службу Power BI. Я нашел вдохновение здесь - https://github.com/dubravcik/pbixrefresher-python
Примечание: я впервые использую pywinauto
После нажатия на кнопку sh кнопка, вам будет предложено выбрать рабочее пространство для публикации sh отчета. Вот в чем проблема. Я, во всем мире, не могу заставить pywinauto щелкнуть нужную опцию рабочего пространства в ListBox. Ниже приведен пример списка рабочих пространств для публикации sh in.
![Fig 1](https://i.stack.imgur.com/qqIpt.png)
Допустим, я хочу нажать 'c вариант. (сейчас выбрано «a»). Сейчас есть много вещей, которые я пробовал. Вывод dialog.print_control_identifiers()
дает такую структуру ниже.
![Fig 2](https://i.stack.imgur.com/Nk4I1.png)
Текущий код выглядит следующим образом:
app_instance = Application(backend = 'uia').connect(path = PROCNAME)
app_window = app_instance.window(title_re = ".*Power BI Desktop")
app_window.wait("enabled", timeout = 300)
app_window.Save.wait("enabled", timeout = 300)
app_window.set_focus()
# Publish
if True:
print("Publishing...")
app_window.Publish.click_input()
publish_dialog = app_window.child_window(auto_id = "KoPublishToGroupDialog")
publish_dialog.print_control_identifiers()
# publish_dialog.wait("enabled", timeout = 300)
# modalDialog = publish_dialog.child_window(auto_id = "modalDialog")
# modalDialog.wait("enabled", timeout = 300)
# dItem = modalDialog.child_window(title=WORKSPACE,control_type="DataItem")
# dItem.click_input()
В соответствии с древовидной структурой, я подумал, что есть еще один диалог, который может «удерживать» ListBox. Однако игра с этим не дала результатов. На данный момент я действительно не знаю, как заставить Python сделать этот выбор.
Я буду вечно благодарен за некоторую помощь и совет. Спасибо!