t.me/atinfo_chat Telegram группа по автоматизации тестирования

Ввод данных в адресную строку windows 10 (pywinauto)

Теги: #<Tag:0x00007f9b02c87860> #<Tag:0x00007f9b02c87450>

Всем доброго дня! Стоит задача автоматизировать процесс загрузки документов на сайт. Средствами selenium тест адекватно доходит до нужного раздела, но когда управление передаётся pywinauto - начинаются вопросы. Есть стандартное окно диалога для загрузки файлов:


Необходимо ввести в сроку адреса название + полный адрес файла для загрузки.
Есть код:

app.Dialog.Toolbar3.Click()                 
app.Dialog.Toolbar3.TypeKeys('xxx', with_spaces=True)

Он не работает. Точнее работает не полностью. Событие Click происходит, но когда пытаюсь ввести текст - результат нулевой. Для определения элементов окна использовал AutoIt win Info.

Если у кого-то был опыт работы с pywinauto, прошу подсказать, что я делаю не так.
Спасибо!

А через send_keys без pywinauto не пробовали?

element = driver.find_element_by_xpath(xpath)
element.send_keys(file_path)

з.ы. xpath до input’а формы

не думаю, что это поможет, т.к. на самом сайте нет формы для ввода пути до файла. Есть кнопка, “Загрузить документ”, после нажатия не которую выводится окно “Открытие” (см. скрин).
p.s. уже близок к решению.

app.Dialog.Edit0.TypeKeys(r'C:\Users\xxx\Documents\Flash\xxx', with_spaces=False)
app.Dialog.Edit0.TypeKeys('{ENTER}')

просто поле для ввода выбрал другое - “Имя файла”.

Я почти уверен на 100%, что форма для ввода пути к файлу появляется сразу после того, как вы нажимаете на “Загрузить документ”, встречал когда-то такое, что инпут появляется после какого-то экшена. Или это что-то вне моего понимания - должен быть элемент который принимает файл.