Форум сайта python.su
Как узнать путь открытой директории в проводнике windows ?
Офлайн
sanodinВ каком из проводников? Их может быть много открыто.
в проводнике windows
Офлайн
Открыта последняя директория , допустим, окно поверх остальных, да хотя бы одно просто открыто , я не беру пока во внимание, что будет открыто несколько окон сразу
Офлайн
Нашел программу http://code.google.com/p/swapy/
генерирует код python для автоматизации гуи приложений
В ней видна область адресной строки проводника, но как вернуть адрес , пока не понял
Отредактировано sanodin (Июль 28, 2013 09:10:04)
Офлайн
swapy неплохая вещь, но думаю это не совсем то что вам надо.
Я думаю вы можете выбрать Edit в котором введена командная строка, а потом выделить текст и скопировать его в буфер обмена. Сильно не бейте, сам не пробовал. Если честно задача кажется мне несколько надуманной, поскольку я при работе под windows никогда проводник не открываю.
import pywinauto app = pywinauto.application.Application.start("explorer") pwa_app = pywinauto.application.Application() w_handle = pywinauto.findwindows.find_windows(class_name='ExploreWClass')[0] window = pwa_app.window_(handle=w_handle) print window.Edit.Texts()[0]
Офлайн
doza_and
Прошу меня простить. А что такое проводник? Я сижу на винде на работе, но не знаю…
Шутка, я тоже им не пользуюсь, и даже не знаю людей, которые бы им пользовались. Все сидят либо на тотале, либо на фаре. Еще есть такие как я, которые используют открытое ПО. Но чтобы проводником - это жесть :)
Офлайн
doza_and
w_handle = pywinauto.findwindows.find_windows(class_name='ExploreWClass')[0] IndexError: list index out of range
Отредактировано sanodin (Июль 30, 2013 08:47:58)
Офлайн
Спасибо
import pywinauto pwa_app = pywinauto.application.Application() w=pywinauto.findwindows.find_windows(class_name='CabinetWClass')[0] window = pwa_app.window_(handle=w) print window.Texts()[0]
Офлайн
Есть “подводные камни” , на разных системах , по разному отображаются окна, где есть Edit , где нет
import pywinauto import os import re pwa_app = pywinauto.application.Application() w=pywinauto.findwindows.find_windows(class_name='CabinetWClass')[0] window = pwa_app.window_(handle=w) print window.Texts()[0] x=window.Texts()[0] w1=window['Progress'] w2=window['Toolbar2'] print w2.Texts()[0] r= w2.Texts()[0] p = re.compile(':(.+)') it = p.findall(r) t= "'".join(it) wer = ' '.join(t.split())
Офлайн