Для меня работает следующее.
from win32com.client import Dispatch
SHELL = Dispatch("Shell.Application")
def get_ie(shell):
for win in shell.Windows():
if win.Name == "Windows Internet Explorer":
return win
return None
def main():
ie = get_ie(SHELL)
if ie:
print ie.LocationURL
else:
print "no ie window"
if __name__ == '__main__':
main()
Я пытался использовать Dispatch('InternetExplorer.Application')
для подключения к текущему окну IE, но оно всегда создавало новое окно.Код был бы проще.
# This doesn't work
from win32com.client import Dispatch
# This line will always create a new window
ie = Dispatch("InternetExplorer.Application")
print ie.LocationURL