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

Sikuli: the coolest Python project I have yet seen...

68 views
Skip to first unread message

Ron

unread,
Jan 24, 2010, 10:18:12 PM1/24/10
to
Sikuli is the coolest Python project I have ever seen in my ten year
hobbyist career. An MIT oepn source project, Sikuli uses Python to
automate GUI tasks (in any GUI or GUI baed app that runs the JVM) by
simply drag and dropping GUI elements into Python scripts as function
arguments. Download at http://sikuli.csail.mit.edu/ I also did this
podcast about Sikuli http://media.libsyn.com/media/awaretek/Python411_20100124_Sikuli.mp3

tim

unread,
Jan 25, 2010, 2:29:25 AM1/25/10
to
On Jan 25, 11:18 am, Ron <ursusmaxi...@gmail.com> wrote:
> Sikuli is the coolest Python project I have ever seen in my ten year
> hobbyist career. An MIT oepn source project, Sikuli uses Python to
> automate GUI tasks (in any GUI or GUI baed app that runs the JVM) by
> simply drag and dropping GUI elements into Python scripts as function
> arguments. Download athttp://sikuli.csail.mit.edu/I also did this
> podcast about Sikulihttp://media.libsyn.com/media/awaretek/Python411_20100124_Sikuli.mp3

Wow , It look likes like better than autoIt !!

Very impressed.

Carl Banks

unread,
Jan 25, 2010, 4:19:57 AM1/25/10
to
On Jan 24, 7:18 pm, Ron <ursusmaxi...@gmail.com> wrote:
> Sikuli is the coolest Python project I have ever seen in my ten year
> hobbyist career. An MIT oepn source project, Sikuli uses Python to
> automate GUI tasks (in any GUI or GUI baed app that runs the JVM) by
> simply drag and dropping GUI elements into Python scripts as function
> arguments. Download athttp://sikuli.csail.mit.edu/I also did this
> podcast about Sikulihttp://media.libsyn.com/media/awaretek/Python411_20100124_Sikuli.mp3

Nice, thanks for the link. Very happy to see people using Python for
cool stuff like this, also to see the alternate implementations in
use.

And it couldn't come at a better time for me as I am trying to figure
out how to automate some GUI-only program I am forced to use at work.


Carl Banks

Olof Bjarnason

unread,
Jan 25, 2010, 4:40:31 AM1/25/10
to Ron, pytho...@python.org
2010/1/25 Ron <ursusm...@gmail.com>:
> --
> http://mail.python.org/mailman/listinfo/python-list
>


It looks really nice, but the screenhost-taking did not work on my
computer (Win7). Innovative yet simple idea this mix-visual-and-code.


--
http://olofb.wordpress.com

Jean-Michel Pichavant

unread,
Jan 25, 2010, 7:27:37 AM1/25/10
to Ron, pytho...@python.org
It looks like your web site is down.

JM

Robin Becker

unread,
Jan 25, 2010, 8:34:32 AM1/25/10
to pytho...@python.org
On 25/01/2010 12:27, Jean-Michel Pichavant wrote:
> It looks like your web site is down.
>
> JM
there's a u-tube here

http://www.youtube.com/watch?v=FxDOlhysFcM

--
Robin Becker

Virgil Stokes

unread,
Jan 25, 2010, 8:39:21 AM1/25/10
to Ron, pytho...@python.org
On 25-Jan-2010 04:18, Ron wrote:
> Sikuli is the coolest Python project I have ever seen in my ten year
> hobbyist career. An MIT oepn source project, Sikuli uses Python to
> automate GUI tasks (in any GUI or GUI baed app that runs the JVM) by
> simply drag and dropping GUI elements into Python scripts as function
> arguments. Download at http://sikuli.csail.mit.edu/ I also did this
>
This link is broken!

--V

Javier Collado

unread,
Jan 25, 2010, 9:14:34 AM1/25/10
to Virgil Stokes, pytho...@python.org, Ron
Hello,

I think the site is under maintenance. I tried a couple of hours ago
and it worked fine.

As an alternative, I found that this link also worked:
http://www.sikuli.org/

Unfortunately, it seems it's not working right now.

Best regards,
Javier

2010/1/25 Virgil Stokes <v...@it.uu.se>:


> On 25-Jan-2010 04:18, Ron wrote:
>>

>> Sikuli is the coolest Python project I have ever seen in my ten year
>> hobbyist career. An MIT oepn source project, Sikuli uses Python to
>> automate GUI tasks (in any GUI or GUI baed app that runs the JVM) by
>> simply drag and dropping GUI elements into Python scripts as function
>> arguments. Download at http://sikuli.csail.mit.edu/ I also did this
>>
>

> This link is broken!
>
> --V
>

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

Ron

unread,
Jan 25, 2010, 10:38:32 AM1/25/10
to
Thew link at MIT does appear to be down right now, but I presume it
will come back up.

Well, those of you who find it underwhelming are in good company. See
the blog post at Lambda the Ultimate
http://lambda-the-ultimate.org/node/3783

I was impressed though by the application to notify you when your bus
gets close to the pickup point, using Google maps, and by the app to
automatically chart a course to Houston from LA on I-10, again using
Google maps. And perhaps most of all, the app to notify you when your
sleeping baby wakes up, from a picture on a digital camera.

Hey, most of life is non-deterministic. I am in the analog engineering
world and simple, deterministic black and white situations are all
fine and useful, but I can see this very easy to use and simple
technology being useful also ;-))

All of the above apps are but a few lines of code.

Ron

Terry Reedy

unread,
Jan 25, 2010, 2:27:17 PM1/25/10
to pytho...@python.org
On 1/25/2010 9:14 AM, Javier Collado wrote:

> I think the site is under maintenance. I tried a couple of hours ago
> and it worked fine.
>
> As an alternative, I found that this link also worked:
> http://www.sikuli.org/

This just redirects to the link below

>>> http://sikuli.csail.mit.edu/ I also did this

>> This link is broken!

Worked for me both yesterday and now.

Ron

unread,
Jan 25, 2010, 11:25:47 PM1/25/10
to
OK, here's an idea. I used to do screen scraping scripts and run them
as CGI scripts with an HTMl user interface. Why not run Sikuli on
Jython on a JVM running on my server, so that I can do my screen
scraping with Sikuli? I can take user inputs by using CGI forms from a
web client, process the requests using a Sikuli script on the server,
and send the results back to the web client.

This sounds like fun to me, and easier to highlight and capture the
appropriate screen information on targeted web sites using Sikuli than
to hand code location information or even using Beautiful Soup.

Jean-Michel Pichavant

unread,
Jan 26, 2010, 4:49:54 AM1/26/10
to Terry Reedy, pytho...@python.org
Terry Reedy wrote:
> On 1/25/2010 9:14 AM, Javier Collado wrote:
>
>> I think the site is under maintenance. I tried a couple of hours ago
>> and it worked fine.
>>
>> As an alternative, I found that this link also worked:
>> http://www.sikuli.org/
>
> This just redirects to the link below
>
>>>> http://sikuli.csail.mit.edu/ I also did this
>
>>> This link is broken!
>
> Worked for me both yesterday and now.
>
I confirmed it now works.
The demo is pretty impressive.

However one should not be the kind of guy changing its desktop theme on
a regular basis. If I got it well, all is based on bitmap recognition
(with some tolerance though). I'll still give it a try.

JM

CM

unread,
Jan 26, 2010, 1:59:10 PM1/26/10
to
On Jan 24, 10:18 pm, Ron <ursusmaxi...@gmail.com> wrote:
> Sikuli is the coolest Python project I have ever seen in my ten year
> hobbyist career. An MIT oepn source project, Sikuli uses Python to
> automate GUI tasks (in any GUI or GUI baed app that runs the JVM) by
> simply drag and dropping GUI elements into Python scripts as function
> arguments. Download athttp://sikuli.csail.mit.edu/I also did this
> podcast about Sikulihttp://media.libsyn.com/media/awaretek/Python411_20100124_Sikuli.mp3

How is this preferable to a macro recorder?

Ron

unread,
Jan 26, 2010, 3:24:48 PM1/26/10
to
On Jan 26, 10:59 am, CM <cmpyt...@gmail.com> wrote:
> On Jan 24, 10:18 pm, Ron <ursusmaxi...@gmail.com> wrote:
>
> > Sikuli is the coolest Python project I have ever seen in my ten year
> > hobbyist career. An MIT open source project, Sikuli uses Python to
> > automate GUI tasks (in any GUI or GUI based app that runs the JVM) by

> > simply drag and dropping GUI elements into Python scripts as function
> > Arguments. Download athttp://sikuli.csail.mit.edu/Ialso did this

> > podcast about Sikulihttp://media.libsyn.com/media/awaretek/Python411_20100124_Sikuli.mp3
>
> How is this preferable to a macro recorder?

Well, the pattern recognition engine allows you to recognize partial
matches to any image, to any desired degree of accuracy. In other
words, you can specify to take action only when an exact match is
found, or else when a 50% match is found. This allows applications
like the baby monitor (to tell you when your sleeping baby wakes up,
and the imminent bus arrival monitor (to tell you when your bus is
within one mile or any distance you want), and the route mapper from
one city to another on a digital map.

Another thing, Sikuli works with web pages. In other words, you can
automate interaction with web sites as well as with desktop
applications.

You can also automate the entry of text.

And it works (theoretically) on any graphical platform (Mac, Linux,
Window, smartphones, etc).

Probably other advantages. Those are just the ones I see off the top
of my head.

Good question.

Ron

Terry Reedy

unread,
Jan 26, 2010, 4:09:25 PM1/26/10
to pytho...@python.org

One can add program logic to the interaction. For instance, one of the
demos on YouTube uses sikuli to read a Bejeweled (game) board. Program
logic then calculates a move.

Tim Roberts

unread,
Jan 27, 2010, 2:47:25 AM1/27/10
to
CM <cmpy...@gmail.com> wrote:
>
>How is this preferable to a macro recorder?

Macro recorders work by measuring mouse motion and capturing click
locations, or by recording the control IDs of the clicked windows. The
former is sensitive to changing window locations, the latter to application
updates.

Sikuli works by using image analysis to locate the regions on the screen to
be tickled. It's a novel idea, although others have correctly pointed out
that it's not the most efficient way to automate applications.
--
Tim Roberts, ti...@probo.com
Providenza & Boekelheide, Inc.

alex23

unread,
Jan 27, 2010, 3:45:22 AM1/27/10
to
Tim Roberts <t...@probo.com> wrote:
> it's not the most efficient way to automate applications

Sikuli doesn't seem that much different from Python in this way: it
may not be the most efficient use of the computer's time, but I dare
say it's significantly less demanding on the end user's.

I can see Sikuli easily progressing to a full visual programming
interface, replacing the 'click' keyword et al with iconic
representations.

Simple "script-less" GUI macro-ing for the masses? Fantastic.

0 new messages