Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #87789 > unrolled thread

Automation of Windows app?

Started byGrant Edwards <invalid@invalid.invalid>
First post2015-03-20 17:55 +0000
Last post2015-03-22 22:31 -0700
Articles 14 — 11 participants

Back to article view | Back to comp.lang.python


Contents

  Automation of Windows app? Grant Edwards <invalid@invalid.invalid> - 2015-03-20 17:55 +0000
    Re: Automation of Windows app? Grant Edwards <invalid@invalid.invalid> - 2015-03-20 18:10 +0000
      Re: Automation of Windows app? Jerry Hill <malaclypse2@gmail.com> - 2015-03-20 15:27 -0400
        Re: Automation of Windows app? Grant Edwards <invalid@invalid.invalid> - 2015-03-20 19:58 +0000
      Re: Automation of Windows app? Michael Torrie <torriem@gmail.com> - 2015-03-22 21:43 -0600
        Re: Automation of Windows app? alex23 <wuwei23@gmail.com> - 2015-04-01 11:14 +1000
          Re: Automation of Windows app? ryguy7272 <ryanshuell@gmail.com> - 2015-08-30 07:25 -0700
            Re: Automation of Windows app? Laura Creighton <lac@openend.se> - 2015-08-30 17:08 +0200
              Re: Automation of Windows app? Grant Edwards <invalid@invalid.invalid> - 2015-08-30 16:18 +0000
      Re: Automation of Windows app? "Jacob Kruger" <jacob@blindza.co.za> - 2015-03-23 08:03 +0200
    Re: Automation of Windows app? Emile van Sebille <emile@fenx.com> - 2015-03-22 10:41 -0700
    Re: Automation of Windows app? vern.muhr@gmail.com - 2015-03-22 16:54 -0700
      Re: Automation of Windows app? Mark Lawrence <breamoreboy@yahoo.co.uk> - 2015-03-23 01:01 +0000
        Re: Automation of Windows app? Rustom Mody <rustompmody@gmail.com> - 2015-03-22 22:31 -0700

#87789 — Automation of Windows app?

FromGrant Edwards <invalid@invalid.invalid>
Date2015-03-20 17:55 +0000
SubjectAutomation of Windows app?
Message-ID<mehmu0$6jn$1@reader1.panix.com>
[I thought I'd seen a discussion of this recently, but I can't seem to
find the right keyword.]

I need to automate operation of a Windows application.  It's a
conformance test app from a standards organizaiton, and it's
_stunningly_ bad.  You have to sit it front of it like some sort of
brainless slave and click a button every 10-20 minutes.

At a minimum, I'd like to click the "run" button on a certain dialog
when it pops up so I can at least run one test multiple times.  It
would also be nice to be able to menu selections and enter data in
dialogs so that I can run multiple tests without human intervention.

I'm normally a Linux and embedded developer, but I have ActiveState
Python installed, and am hoping I can write some sort of Python
program to drive this awful Windows app...

<rant>
There's no way to automate or script anything in this application, and
even the simplest features seem to be broken.  For example, there a
spot where you can enter how many times a test is to run.  But after
each run, a dialog box pops up and you have to click "run" again.
It's one of those programs that can only survive in such a state of
brokenness because there's a "standards" organization that forces you
to buy it and use it (I'm talking about _you_ ODVA).
</rant>

-- 
Grant Edwards               grant.b.edwards        Yow! Boys, you have ALL
                                  at               been selected to LEAVE th'
                              gmail.com            PLANET in 15 minutes!!

[toc] | [next] | [standalone]


#87790

FromGrant Edwards <invalid@invalid.invalid>
Date2015-03-20 18:10 +0000
Message-ID<mehnr3$ra$1@reader1.panix.com>
In reply to#87789
On 2015-03-20, Grant Edwards <invalid@invalid.invalid> wrote:

> I need to automate operation of a Windows application.

I should have mentioned that I've found and am going to experiment
a bit with pywinauto-0.4.0, but if there is anything else I should
look at, suggestions would be welcome.

-- 
Grant Edwards               grant.b.edwards        Yow! over in west
                                  at               Philadelphia a puppy is
                              gmail.com            vomiting ...

[toc] | [prev] | [next] | [standalone]


#87794

FromJerry Hill <malaclypse2@gmail.com>
Date2015-03-20 15:27 -0400
Message-ID<mailman.46.1426879649.10327.python-list@python.org>
In reply to#87790
On Fri, Mar 20, 2015 at 2:10 PM, Grant Edwards <invalid@invalid.invalid> wrote:
> I need to automate operation of a Windows application.

I've used Sikuli (http://www.sikuli.org/) for similar things in the
past.  It's an automation framework built on Jython, and it worked
great for what I needed at the time.

I think AutoHotKey is also widely used for automating windows GUI
apps, but it's not related to python at all.

-- 
Jerry

[toc] | [prev] | [next] | [standalone]


#87795

FromGrant Edwards <invalid@invalid.invalid>
Date2015-03-20 19:58 +0000
Message-ID<mehu4h$gdk$1@reader1.panix.com>
In reply to#87794
On 2015-03-20, Jerry Hill <malaclypse2@gmail.com> wrote:
> On Fri, Mar 20, 2015 at 2:10 PM, Grant Edwards <invalid@invalid.invalid> wrote:
>> I need to automate operation of a Windows application.
>
> I've used Sikuli (http://www.sikuli.org/) for similar things in the
> past.  It's an automation framework built on Jython, and it worked
> great for what I needed at the time.

Thanks, I'll keep Sikuli in mind.  So far, I've been able to get
pywinauto to do what I need to do [as long as I run programs from the
Windows cmd.exe prompt.  You apparently can't run Windows Python
programs from a Cygwin terminal or ssh session].

> I think AutoHotKey is also widely used for automating windows GUI
> apps, but it's not related to python at all.

-- 
Grant Edwards               grant.b.edwards        Yow! I want to kill
                                  at               everyone here with a cute
                              gmail.com            colorful Hydrogen Bomb!!

[toc] | [prev] | [next] | [standalone]


#87820

FromMichael Torrie <torriem@gmail.com>
Date2015-03-22 21:43 -0600
Message-ID<mailman.56.1427082215.10327.python-list@python.org>
In reply to#87790
On 03/20/2015 12:10 PM, Grant Edwards wrote:
> On 2015-03-20, Grant Edwards <invalid@invalid.invalid> wrote:
> 
>> I need to automate operation of a Windows application.
> 
> I should have mentioned that I've found and am going to experiment
> a bit with pywinauto-0.4.0, but if there is anything else I should
> look at, suggestions would be welcome.

As near as I can tell the standard go-to utility for this is a program
called AutoIt.  https://www.autoitscript.com/site/autoit/

Nothing to do with Python, and its scripting language is maybe not that
appealing to many, but it does the job, and does it pretty well.  I
first used it when working with a Linux-based PXE boot solution that
would automatically install Windows via a network boot, and install a
custom set of apps we set up.  Was super slick.

[toc] | [prev] | [next] | [standalone]


#88409

Fromalex23 <wuwei23@gmail.com>
Date2015-04-01 11:14 +1000
Message-ID<mffgnt$ftu$1@dont-email.me>
In reply to#87820
On 23/03/2015 1:43 PM, Michael Torrie wrote:
> As near as I can tell the standard go-to utility for this is a program
> called AutoIt.  https://www.autoitscript.com/site/autoit/
>
> Nothing to do with Python, and its scripting language is maybe not that
> appealing to many, but it does the job, and does it pretty well.

Actually, it's not *entirely* unrelated, as there's a Python wrapper for it:

https://pypi.python.org/pypi/PyAutoIt/0.3

It's 2.7 only, though, so if 3.x is required, it's also possible to 
create your own wrapper using win32com:

http://stackoverflow.com/questions/151846/get-other-running-processes-window-sizes-in-python/155587#155587

[toc] | [prev] | [next] | [standalone]


#95767

Fromryguy7272 <ryanshuell@gmail.com>
Date2015-08-30 07:25 -0700
Message-ID<cc5451f3-9f2c-4176-ad36-66e6d45322a5@googlegroups.com>
In reply to#88409
On Tuesday, March 31, 2015 at 9:14:38 PM UTC-4, alex23 wrote:
> On 23/03/2015 1:43 PM, Michael Torrie wrote:
> > As near as I can tell the standard go-to utility for this is a program
> > called AutoIt.  https://www.autoitscript.com/site/autoit/
> >
> > Nothing to do with Python, and its scripting language is maybe not that
> > appealing to many, but it does the job, and does it pretty well.
> 
> Actually, it's not *entirely* unrelated, as there's a Python wrapper for it:
> 
> https://pypi.python.org/pypi/PyAutoIt/0.3
> 
> It's 2.7 only, though, so if 3.x is required, it's also possible to 
> create your own wrapper using win32com:
> 
> http://stackoverflow.com/questions/151846/get-other-running-processes-window-sizes-in-python/155587#155587


I know this is an old post, but anyway, can't you just use Windows Scheduler?
http://windows.microsoft.com/en-us/windows/schedule-task#1TC=windows-7

[toc] | [prev] | [next] | [standalone]


#95768

FromLaura Creighton <lac@openend.se>
Date2015-08-30 17:08 +0200
Message-ID<mailman.134.1440947337.11709.python-list@python.org>
In reply to#95767
In a message of Sun, 30 Aug 2015 07:25:55 -0700, ryguy7272 writes:

>I know this is an old post, but anyway, can't you just use Windows Scheduler?
>http://windows.microsoft.com/en-us/windows/schedule-task#1TC=windows-7

I think you may have missed the original post, where poor old
Grant Edwards said:

> I need to automate operation of a Windows application.  It's a
> conformance test app from a standards organizaiton, and it's
> _stunningly_ bad.  You have to sit it front of it like some sort of
> brainless slave and click a button every 10-20 minutes.

So his problem isn't he needs to schedule some tasks, but rather he
has to exercise a horrible app by sitting mindlessly in front of
a Gui and remembering to click something at it every so often.  Poor
Grant is going to expire of boredom before the job gets done.   But
a python program can be plenty intelligent enough for this task.

So Grant?  How did it go?  Would you recommend it for the rest of us?

Laura

[toc] | [prev] | [next] | [standalone]


#95769

FromGrant Edwards <invalid@invalid.invalid>
Date2015-08-30 16:18 +0000
Message-ID<mrvacu$ej8$1@reader1.panix.com>
In reply to#95768
On 2015-08-30, Laura Creighton <lac@openend.se> wrote:
> In a message of Sun, 30 Aug 2015 07:25:55 -0700, ryguy7272 writes:
>
>>I know this is an old post, but anyway, can't you just use Windows Scheduler?
>>http://windows.microsoft.com/en-us/windows/schedule-task#1TC=windows-7
>
> I think you may have missed the original post, where poor old
> Grant Edwards said:
>
>> I need to automate operation of a Windows application.  It's a
>> conformance test app from a standards organizaiton, and it's
>> _stunningly_ bad.  You have to sit it front of it like some sort of
>> brainless slave and click a button every 10-20 minutes.
>
> So his problem isn't he needs to schedule some tasks, but rather he
> has to exercise a horrible app by sitting mindlessly in front of
> a Gui and remembering to click something at it every so often.  Poor
> Grant is going to expire of boredom before the job gets done.   But
> a python program can be plenty intelligent enough for this task.
>
> So Grant?  How did it go?  Would you recommend it for the rest of us?

[Regarding https://pypi.python.org/pypi/PyAutoIt/0.3]

Definitely.  It worked just fine for what I needed to do.  I started
the application and configured a few settings "by hand" and started
the conformance test application.  Once it was running, I started my
little Python program which waited for the "pass/fail" window to pop
up and then clicked "continue" to continue the tests.  Presto:
unattended test runs.

-- 
Grant

[toc] | [prev] | [next] | [standalone]


#87823

From"Jacob Kruger" <jacob@blindza.co.za>
Date2015-03-23 08:03 +0200
Message-ID<mailman.57.1427091702.10327.python-list@python.org>
In reply to#87790
----- Original Message ----- 
From: "Michael Torrie" <torriem@gmail.com>
To: <python-list@python.org>
Sent: Monday, March 23, 2015 5:43 AM
Subject: Re: Automation of Windows app?


>  Nothing to do with Python, and its scripting language is maybe not that
> appealing to many, but it does the job, and does it pretty well.  I
> first used it when working with a Linux-based PXE boot solution that
> would automatically install Windows via a network boot, and install a
> custom set of apps we set up.  Was super slick.

Also somewhat unrelated, but, my primary screen reader software, jaws, also
allows you to generate scripts to sort of invoke multi-activity macro's with
regards to operating system - so you could get it to click on a button,
enter text in a field, move cursors around, etc. etc., repeatedly, if you
wanted to - not really same as any form of bulk testing of software, etc.,
but, can interact with interfaces automatically, etc.

Stay well

Jacob Kruger
Blind Biker
Skype: BlindZA
"Roger Wilco wants to welcome you...to the space janitor's closet..."

[toc] | [prev] | [next] | [standalone]


#87815

FromEmile van Sebille <emile@fenx.com>
Date2015-03-22 10:41 -0700
Message-ID<mailman.53.1427046129.10327.python-list@python.org>
In reply to#87789
On 3/20/2015 10:55 AM, Grant Edwards wrote:

> I need to automate operation of a Windows application.

I've been productively using python to create macro scheduler [1] 
scripts to automate windows programs for years.

A sample script:

Press Alt
Send Character/Text>cu
Release Alt
WaitWindowOpen>Sheets*
Wait>1
Press Alt
Send Character/Text>ls
Release Alt
Wait>1
Wait>1
Press Alt
Send Character/Text>fs
Release Alt
Wait>1


HTH,

Emile


[1] https://www.mjtnet.com/

[toc] | [prev] | [next] | [standalone]


#87817

Fromvern.muhr@gmail.com
Date2015-03-22 16:54 -0700
Message-ID<8e019db5-86e8-4d2d-a864-c1ad5779085a@googlegroups.com>
In reply to#87789
Check out Sikuli at www.sikuli.org. It is an amazing program, and it is scripted in Python (Jython actually)!

Good luck.

[toc] | [prev] | [next] | [standalone]


#87819

FromMark Lawrence <breamoreboy@yahoo.co.uk>
Date2015-03-23 01:01 +0000
Message-ID<mailman.55.1427072535.10327.python-list@python.org>
In reply to#87817
On 22/03/2015 23:54, vern.muhr@gmail.com wrote:
> Check out Sikuli at www.sikuli.org. It is an amazing program, and it is scripted in Python (Jython actually)!
>
> Good luck.
>

Only 2.7 again, when are we going to ban Luddites from this list? :)

-- 
My fellow Pythonistas, ask not what our language can do for you, ask
what you can do for our language.

Mark Lawrence

[toc] | [prev] | [next] | [standalone]


#87821

FromRustom Mody <rustompmody@gmail.com>
Date2015-03-22 22:31 -0700
Message-ID<7bc21279-fbb2-4b08-ad38-aa9f974241af@googlegroups.com>
In reply to#87819
On Monday, March 23, 2015 at 6:32:26 AM UTC+5:30, Mark Lawrence wrote:
> On 22/03/2015 23:54, vern.muhr wrote:
> > Check out Sikuli at www.sikuli.org. It is an amazing program, and it is scripted in Python (Jython actually)!
> >
> > Good luck.
> >
> 
> Only 2.7 again, when are we going to ban Luddites from this list? :)

Python 2.7 can be connected with Luddites after 2020
See schedule https://www.python.org/dev/peps/pep-0373/

Of course you are free to canvas for a more aggressive Luddite standard
on/for this list.

Some will even agree... Many will not
[Count me in the average-majority]

[toc] | [prev] | [standalone]


Back to top | Article view | comp.lang.python


csiph-web