ホーム > 読んだ

大澤文孝
さわって学べるSikuliX
Pythonで作るRPA

ガイド

テストツールを業務の自動化として使う

書誌

author大澤文孝
publisher日経BP
year2019
price2400+tax
isbn978-4-296-10303-4

目次

1本文
2抄録

履歴

editor唯野
2020.12.10読了
2020.12.11公開

最近だとRPAという言葉が使われているものの、業務の自動化という発想は昔からあるもので特に目新しいことではない。また、UI操作ライブラリも例えばPerlならWin32::GuiTestなどが既に存在する。とはいえ、このPerlモジュールの名前からも分かるように元々はテスト自動化を目的としていたものを、一般業務の自動化としても積極的に使うという辺りが今日のトレンドなのではないかと思う。

Sikulix自身はJythonで書かれたPythonを使えるJavaなので、ライブラリは両言語のものを使用できるのが強みであるものの、現状でPython2系となっているのが弱みである。また画面認識によるOCRが特徴であるが、Tesseract-OCRが3対応で最新の4には非対応など課題もある。しかしながらSikulixはRPAツールの中でも無料で利用できIDEも備えていること、やはりPythonを利用できることは大きな利点であり、利点が欠点を上回っていると思う。

なお本書では簡単なサンプルから始めて最後には実際の業務でも利用できそうなRPAアプリ製作まで行っており、内容的にも入門書として十分なものになっている。むろん、PythonやJavaに関する多少の知識は必要だが、うまくまとまっており違和感を感じることはない。入門書としてのバランスが良いのでお勧めである。

# 但し、本書ではPDFライブラリとしてpdfminerを使用しているサンプルがあるが私はインストール時にエラーが出た...

抄録

8-11

RPAはRobotic Process Automationの略で業務の自動化を行い、特にマウスやキーボードなどUI操作をエミュレートする。マクロなどに頼らないのでレガシーなソフトウェアにも対応できる。RPAツールとしてのSikulixはUI操作を画像認識できる点で特徴があり、プログラミングは Python 2.7、Ruby、JavaScriptなどを利用することができる。本書ではPython 2.7を扱うが、現時点でPython3には対応していない。これはSikulix自身がJavaで書かれておりJython経由での実行となるが、Jythonの開発が2.7系列で止まっているためである。ただネットで調べるとPython3対応へ向けて動いているようである。

12-14

上述したようにSikulixは画像認識に特徴があるため、画像マッチングによる入力項目以外の操作や監視、OCRを行うことができる。また各言語のライブラリを使用した本格的なプログラムも組める。一方、RPAではツールがUIを自動操作している間はユーザからの操作ができない、画面の解像度などに依存するといったデメリットがある。

15-23/32