sikuli的平凡之路

来源:互联网 发布:埃及恐怖袭击 知乎 编辑:程序博客网 时间:2024/04/30 12:30

一、Sikuli的认识

1.l什么是Sikuli ?

    Sikuli 是由 MIT的研究团队发布的新型图形化编程技术。它以图像检索技术为基础,自动化你在屏幕上看到的任何东西使用图像来识别和控制GUI组件。 使用者可利用屏幕截图直接引用 GUI元素进行编程,完成交互操作。 在容易访问GUI的内部或源代码是非常有用的。
Sikuli 一词取自墨西哥 Huichol Indian土著语,意为“上帝之眼”,正如其开发者张琮翔所说—— Sikuli 让电脑能像人一样“看”这个“真实世界”。
2.lSikuli 官网:http://www.sikuli.org/

二、Sikuli的环境搭建

1.准备工具

jre-6u37-windows-i586.exe

sikuli-X-1.0rc3 (r905)-win32.exe

sikuli-r930-win32.zip

2.注意事项

1)sikuli只有32位版本提供。但是这个版本应该运行在32位和64位Windows系统。 
2)确保您已经安装了官方的SunJava 6 JRE 32位 版本(Java 7或64位不支持)。
3)复制sikuli-r930-win32.zip内容 到 SikuliX 。 这一步的目的是r930关联文件修复了了最近的bug ,所以替换r905(有问题版本)文件关联。
4)sikuli-X-1.0rc3(r905)-win32.exe能实现环境变量自动配置,如果没有需要手动配置path=C:\Program Files (x86)\SikuliX\libs;C:\Program Files (x86)\Java\jre6\\bin;

三、Sikuli原理

以python为基础,需要搭建Java运行环境。

四、sikuli界面

五、语法介绍(1)

鼠标动作

Øclick(GUI)

  在屏幕上或指定区域中左键单击匹配度最佳的GUI组件

     click(    )

ØrightClick(GUI):

  在屏幕上或指定区域中右键单击匹配度最佳的GUI组件

    rightClick(  )

Ø doubleClick(GUI)

  在屏幕上或指定区域中右键单击匹配度最佳的GUI组件

  doubleClick)

ØdragDrop(GUI,GUI)

  拖放第一个组件到第二个组件上

  dragDrop(      ,      )

Øhover(GUI)

  移动鼠标指针至匹配度最佳的GUI组件

hover(   )

  六、语法介绍(2)

键盘动作

Øtype(text)

   在当前焦点所在窗口中键入test

      type("www.sikuli.org")

Øtype(GUI,test)

  点击给定组件使其获得焦点,然后键入test

  type( ,"www.sikuli.org")

Øpaste(test)

   将test粘贴到当前焦点所在的窗口控件

   paste("www.sikuli.org")

Øpaste(GUI,test)

  点击给定组件使其获得焦点,然后粘贴test

七、实际案例

自动登录QQ并发送信息到指定好友

实现步骤:

1.打开QQ应用程序

2.输入账户、密码

3.登录

4.查找指定用户

5.发送信息

6.关闭QQ应用程序

0 0