Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Automating IE 6.0

1 view
Skip to first unread message

EricP

unread,
Oct 25, 2003, 6:31:58 AM10/25/03
to
I'm trying to figure out how to print from IE 6.0 using Python's Win32all
com library.
When I do

from win32com.client import Dispatch
from time import sleep
ie = Dispatch("InternetExplorer.Application")
ie.Visible = 1
ie.Navigate("http://www.cnn.com")
if ie.Busy:
sleep(2)

and then interactly look for methods by using the ie. (dot) approach there
are very few objects and non that relate to the tool bar or commands. How
do I expose the IE object library and which object library do I inspect to
see the objects and methods avaiable to me.

Thanks


Peter Hansen

unread,
Oct 25, 2003, 10:13:54 AM10/25/03
to

This isn't really a Python question, although someone might have examples
that already work.

Usually you need to go to the MSDN (MS Developer Network) pages and
read up on the IE object model there.

Do let us know if you find the answer, though, so it can be found in
the mailing list archives.

-Peter

EricP

unread,
Oct 25, 2003, 4:43:57 PM10/25/03
to
Okay I'm making some progress using win32com and com automation to get
Internet Explorer to print from python.

I used the makepy utility on the "Microsoft Internet Controls (1.1)" object
library to get early binding and the following works

# IE COM Example

# print without prompting the user with printer dialog

from win32com.client import Dispatch

from time import sleep

ie = Dispatch("InternetExplorer.Application")

ie.Visible = 1

ie.Navigate("http://www.cnn.com")

if ie.Busy:

sleep(2)

# print the current IE document without prompting the user for the printer
dialog

ie.ExecWB(win32com.client.constants.OLECMDID_PRINT,win32com.client.constants
.OLECMDEXECOPT_DONTPROMPTUSER)


Next is to try to get some control over the printer properties and the
default printer so I can write to a PDF file using Distiller.

I'm new to python and to com objects but not to programming. This has been
pretty painful but I got it. The pain most mostly in just finding the
documentation for ExecWB on the microsoft site, recongnizing that the first
attribute for ExecWB is not needed for python (assuming this is self),
getting the constants syntax just right and 1st and foremost figuring out
which object library to run makepy on. I've learned a lot on the way......

"Peter Hansen" <pe...@engcorp.com> wrote in message
news:3F9A8522...@engcorp.com...

EricP

unread,
Oct 26, 2003, 7:31:45 AM10/26/03
to
Sorry about the last post and the bad formmatting. I'm using outlook to
post to the news groups and it does funky things....... Hopefully this is
better.

Okay I'm making some progress using win32com and com automation to get

Microsoft Internet Controls Internet Explorer to print from python.

I used the makepy utility on the "Microsoft Internet Controls (1.1)" object

library to get early binding.

This works:

# IE COM Example
# print without prompting the user with printer dialog

from win32com.client import Dispatch
from time import sleep
ie = Dispatch("InternetExplorer.Application")
ie.Visible = 1
ie.Navigate("http://www.cnn.com")
if ie.Busy:
sleep(2)
# print the current IE document without prompting the user for the
printerdialog
ie.ExecWB(win32com.client.constants.OLECMDID_PRINT,win32com.client.constants
.OLECMDEXECOPT_DONTPROMPTUSER)


Figuring out that "Microsoft Internet Controls (1.1)" was the correct object
library for Internet Explorer was bit of a challenge. Yes of course I
couild have guessed but then I would not have learned so much.

What I did was:
1) I knew that InternetExplorer.Application could be used ad the ProgID so I
searched the registery for this text
2) When I found the registry listing that had the associated CLSID I then
searched the registry for this value
3) Volia' - Found this text <strong>Microsoft Internet Controls</strong> in
one of the registry data fields


Next is to try to get some control over the printer properties and the
default printer so I can write to a PDF file using Distiller.

"EricP" <fordphoto...@yahoo.comNOSPAM> wrote in message
news:hgBmb.13761$9E1.66547@attbi_s52...

0 new messages