LoginSignup
5
9

More than 5 years have passed since last update.

Sikuliデモプログラムを作ってみた(準備編)

Last updated at Posted at 2017-06-17

Sikuli 楽しいよ!

と言うばかりではあれなので、デモプログラムを作ってみました。
HelloWorldよりも、もう少し凝った使い方をしています。色々Tipsが入ってます。

0. Sikuliとは

Sikuli automates anything you see on the screen. It uses image recognition to identify and control GUI components. It is useful when there is no easy access to a GUI's internal or source code.
(公式より)

Sikuliとは画像認識(OpenCV)を用いて、画面上に表示されているアプリケーションを自動的に操作するためのプログラムです。
アプリケーションの内部コードまたはソースコードに簡単にアクセスできない場合に便利です。
Windows/Mac/Linux(GUIのあるディストリビューション)等で動作します。
画面上に表示されているものであれば、大抵の操作はできるようになる…と思います。
#文字認識はあまり得意ではありません。

1. 公式

http://www.sikuli.org/
http://doc.sikuli.org/

コーディングのやり方はこんな感じ。
https://www.youtube.com/watch?v=FxDOlhysFcM (英語)

2. デモプログラム

2.1. 動画

2.2. 処理概要

  1. Chrome を開く
  2. Excel を開く
  3. 設定ファイルで指定されたランドマークごとに以下の処理を実行する
    1. Chrome で GoogleMap を開く
    2. ランドマークを検索する
    3. 検索結果をキャプチャして画像保存する
    4. Excelを開く
    5. シートを追加して、ランドマークをシート名に設定する
    6. ランドマーク名、共有リンク、キャプチャ画像をシートに貼り付ける
  4. Excelを保存する

2.3. 動作環境

以下の環境で動作する事を想定しています。

  • Windows 7 / 10
  • Sikuli ver1.1.0 / 1.1.1 (Jython 2.7)
  • Google Chrome ver58
  • Microsoft Excel 2003 / 2010 / 2013

実際に確認した組合せは以下の通りです。
画像認識を行うため、環境が異なると正しく認識できない場合があります。
(だからあんまりデモとか出回ってないのかも…)

  • Windows7 + Sikuli 1.1.0 + Excel2003 + Chrome 58
  • Windows7 + Sikuli 1.1.0 + Excel2010 + Chrome 58
  • Windows7 + Sikuli 1.1.0 + Excel2013 + Chrome 58
  • Windows10 + Sikuli 1.1.1 + Excel2003 + Chrome 58

2.4. ソースコード

3. インストール

JavaとSikuliをインストールしてください。
詳細は以下とか参照。

[test][automation] sikuliを使ってGUI操作を自動化する
http://qiita.com/YHayama@github/items/483198cba0e7c4baa78c

4. 準備

  • 実行バッチファイル(demo.bat)で各種パス等の設定を行ってください。
  • 設定ファイル(setting.xml)で各種パス等の設定を行ってください。
  • 不確定要素を減らすため、他のプログラム等はすべて閉じてください。
  • デモ実行中はマウスカーソル、キーボードが自動で動く為、手入力が入ると予期せぬ動作を起こすことがあります。
  • Chromeは全画面表示を解除し、縦サイズを短くしてください(Google Mapのメニューで「地形」以降がスクロールしてないと表示されないくらい)
  • デモは Ctrl+↑ で中断することができます。

すべて完了したら、demo.batを実行してください。

5. 解説

Sikuliデモプログラムを作ってみた(設定・起動編)
http://qiita.com/miz21358/items/7462bae80494d49dc392

Sikuliデモプログラムを作ってみた(キャプチャ編)
http://qiita.com/miz21358/items/d2efb093a6f7c1ab9c13

5
9
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
9