How do I get the URL of the active tab in Firefox/IE/Chrome?

2010-11-28 Thread He Jibo
Hi,
I am writing a small program, which needs to get the URL of the active
tab in either of firefox, internet exploerer or chrome.
My need is similar as the one posted at, http://stackoverflow.com/questions/3631
... -ie-chrome

I did a lot of Googling, and get the following code. The following
code can get the url of the first tab in internet explorer. My
question is, how can I get the url of the current active tab? Thanks.

'''
http://efreedom.com/Question/1-2555905/ ... Bar-Python
http://blogs.msdn.com/b/oldnewthing/arc ... 35657.aspx
http://mail.python.org/pipermail/python ... 02040.html
http://code.activestate.com/recipes/302 ... lass-file/
'''
from win32com.client import Dispatch
import win32api, win32con,win32gui


SHELL = Dispatch(Shell.Application)

def get_ie(shell):
for win in shell.Windows():
# print win
if win.Name == Windows Internet Explorer:
return win
return None

def main():
ie = get_ie(SHELL)
if ie:
print ie.LocationURL
print ie.LocationName
print ie.ReadyState
print ie
print ie.Document.title
print ie.Document.location
print ie.Document.forms

# title = win32gui.GetWindowText(ie)
# print title

else:
print no ie window

if __name__ == '__main__':
main()
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: How do I get the URL of the active tab in Firefox/IE/Chrome?

2010-11-28 Thread Tim Harig
On 2010-11-28, He Jibo hej...@gmail.com wrote:
 I did a lot of Googling, and get the following code. The following
 code can get the url of the first tab in internet explorer. My
 question is, how can I get the url of the current active tab? Thanks.

It would be beneficial to know what your ultimate goal is.  The
InternetExplorer.Application automation object doesn't contain any way to
manipulate tabs directly; but, there are likely less direct methods of
achieving whatever you are trying to accomplish if you let us know what
that is.
-- 
http://mail.python.org/mailman/listinfo/python-list


How do I get the URL of the active tab in Firefox/IE/Chrome?

2010-11-28 Thread He Jibo
Hi,
I am writing a small program, which needs to get the URL of the active
tab in either of firefox, internet exploerer or chrome.
My need is similar as the one posted at,
http://stackoverflow.com/questions/3631216/how-do-i-get-the-url-of-the-visible-tab-in-firefox-ie-chrome

I did a lot of Googling, and get the following code. The following
code can get the url of the first tab in internet explorer. My
question is, how can I get the url of the current active tab? Thanks.

'''
http://efreedom.com/Question/1-2555905/Get-Internet-Explorer-Address-Bar-Python
http://blogs.msdn.com/b/oldnewthing/archive/2005/07/05/435657.aspx
http://mail.python.org/pipermail/python-win32/2004-June/002040.html
http://code.activestate.com/recipes/302324-browser-automation-tool-py-class-file/
'''
from win32com.client import Dispatch
import win32api, win32con,win32gui


SHELL = Dispatch(Shell.Application)

def get_ie(shell):
for win in shell.Windows():
#print win
if win.Name == Windows Internet Explorer:
return win
return None

def main():
ie = get_ie(SHELL)
if ie:
print ie.LocationURL
print ie.LocationName
print ie.ReadyState
print ie
print ie.Document.title
print ie.Document.location
print ie.Document.forms

#title = win32gui.GetWindowText(ie)
#print title

else:
print no ie window

if __name__ == '__main__':
main()
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: How do I get the URL of the active tab in Firefox/IE/Chrome?

2010-11-28 Thread Michel Claveau - MVP
Hello!

 The InternetExplorer.Application automation object doesn't contain 
 any way to manipulate tabs directly

False. Try this example:
  import win32com.client
  for instance in 
win32com.client.Dispatch('{9BA05972-F6A8-11CF-A442-00A0C90A8F39}'):
  print instance,  URL :,instance.LocationURL

@-salutations
-- 
Michel Claveau 


-- 
http://mail.python.org/mailman/listinfo/python-list


Re: How do I get the URL of the active tab in Firefox/IE/Chrome?

2010-11-28 Thread Tim Harig
On 2010-11-29, Michel Claveau - MVP enleverlesx_xx...@xmclavxeaux.com.invalid 
wrote:
 Hello!

 The InternetExplorer.Application automation object doesn't contain 
 any way to manipulate tabs directly

 False. Try this example:
   import win32com.client
   for instance in 
 win32com.client.Dispatch('{9BA05972-F6A8-11CF-A442-00A0C90A8F39}'):
   print instance,  URL :,instance.LocationURL

A Shell collection object != a InternetExplorer.Application object.
The problem with using a ShellWindows object is that you could easily
connect to the wrong instance, especially since the OP doesn't know the
LocationURL of the instance that he is looking for.  That is why I asked
for clarification.  Once we know what the OP is trying to do, we can
make sure that he has a reliable method to connect to the proper instance.
-- 
http://mail.python.org/mailman/listinfo/python-list