Thanks so much for your valuable information. I will only need the url of a browser when it is in the front. I am going to try SendKey, it seems to be a good way to go. Have a nice day!
--------------------------- He Jibo Department of Psychology, Beckman Institute for Advanced Science and Technology University of Illinois, Urbana Champaign, 603 East Daniel St., Champaign, IL 61820 website: www.hejibo.info On Tue, Nov 30, 2010 at 9:09 AM, Mike Driscoll <mdrisc...@co.marshall.ia.us>wrote: > On 1:59 PM, He Jibo wrote: > > 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() > --------------------------- > He Jibo > Department of Psychology, > Beckman Institute for Advanced Science and Technology > University of Illinois, Urbana Champaign, > 603 East Daniel St., > Champaign, IL 61820 > website: www.hejibo.info > > > It will probably be frowned on here, but one of the easiest ways would be > to use SendKeys in combination with some Windows hackery. I have attached > some code I came up with after getting help from several of the fine people > on this list. It shows how to bring a window into focus by just passing in > an expected string. In this case, you would want to use something like > "Windows Internet Explorer" and have it search for that. > > Once that's in focus, you can use the SendKeys package ( > http://www.rutherfurd.net/python/sendkeys/) to send an ALT+D to select the > url and then CTRL+C to copy it. Then you can use the win32clipboard module > from PyWin32 to grab the text from the clipboard. > > It's a hack, but it's kind of fun. Of course, you can't use your PC while > the script runs or you might interrupt the process and send the keys to the > wrong window. > > > -- > Mike Driscoll > Applications Specialist > Blog: http://blog.pythonlibrary.org >
_______________________________________________ python-win32 mailing list python-win32@python.org http://mail.python.org/mailman/listinfo/python-win32