Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > Python > Automating IE 6.0

Reply
Thread Tools

Automating IE 6.0

 
 
EricP
Guest
Posts: n/a
 
      10-25-2003
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


 
Reply With Quote
 
 
 
 
Peter Hansen
Guest
Posts: n/a
 
      10-25-2003
EricP wrote:
>
> 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.


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
 
Reply With Quote
 
 
 
 
EricP
Guest
Posts: n/a
 
      10-25-2003
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" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
> EricP wrote:
> >
> > 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.

>
> 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



 
Reply With Quote
 
EricP
Guest
Posts: n/a
 
      10-26-2003
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" <(E-Mail Removed)> wrote in message
news:hgBmb.13761$9E1.66547@attbi_s52...
> 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" <(E-Mail Removed)> wrote in message
> news:(E-Mail Removed)...
> > EricP wrote:
> > >
> > > 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.

> >
> > 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

>
>



 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
automating logon to passwd protected urls ? ngoc Firefox 0 09-29-2005 02:18 PM
Automating WPA-PSK installation on domain PCs? =?Utf-8?B?RHJCdW5zZW4=?= Wireless Networking 3 08-01-2005 09:09 PM
Automating switch/router config backups sensei Cisco 6 12-07-2004 07:07 PM
Automating window switching Dmitry Cisco 8 03-04-2004 07:06 PM
Automating Cisco switch configuration changes Dmitry Cisco 4 02-10-2004 08:50 AM



Advertisments