top of page

SikuliXの基本操作(左メニュー編④paste、日本語入力編)

執筆者の写真: まあさまあさ

更新日:2020年2月27日

いよいよコマンドリストの機能紹介の最終回、pasteに関してです。


公式は以下の通りです。


paste(文字列)

paste(貼り付ける位置の画像,文字列)


基本はtypeと同じ使い方ですが、最も異なるのはpasteは日本語入力を行える、という点かと思います。


ここでおまじないです。シクリックスで日本語を扱う場合、プログラムの頭の部分に以下の3行を加える必要があります。


import sys

reload(sys)

sys.setdefaultencoding('utf-8')#文字コードを変更


詳細なご説明は省かせていただきますが、この3行はシクリックス、と申しますかPythonで日本語を扱うときに必ず加える必要がある文言で、デフォルトの文字コードを変更するためのものです。


もう一つおまじないがあります。


print(u"業務自動化研究所")


というように、日本語の前には必ずuを付ける必要があります。

これを行いませんと文字化けしてしまいます。


ここで少しテストをしてみます。

以下のコードを実行してみましょう。


import sys

reload(sys)

sys.setdefaultencoding('utf-8')#文字コードを変更

print("業務自動化研究所")

print(u"業務自動化研究所")

popup(u"業務自動化研究所")

popup("業務自動化研究所")










メセージウインドウに関してはuがあっても無くても文字化けなし、ポップアップはuがないと文字化けしました。


頭の3行のおまじないを消すと、また違う挙動を示します。


シクリックス≒Pythonは私のようにVBAからプログラミングに入った人間にとっては、変数や文字コード、インデントなど大きな違いがあり戸惑います。


ただ、別の見方をするとシクリックスはPythonの基礎を勉強する良いツールになると思います。


また私は最近、VBAでコードを書く際もインデント等、Pythonをまねる書き方をするようにしています。その方が見やすくなりますし、頭が対応しやすくなります。



今回のまとめです。ヤフーで「業務自動化研究所」と検索する簡単なRPAを作ります。












 

import sys

reload(sys)

sys.setdefaultencoding('utf-8')#文字コードを変更


doubleClick("1582728839540.png")#ショートカットをダブルクリック

wait("1582729022570.png",15)#この画像が出るまで、最大15秒待機

wait(1)#予備で1秒待機

if exists("1582729093089.png"):#ウインドウが最大化されていない場合、

click("1582729105016.png")#最大化する

click("1582728864867.png")

paste("1582728883203.png", u"業務自動化研究所")#検索窓に入力

click("1582728946866.png")#検索ボタンをクリック


 

うまく動きましたでしょうか?


今回は少しサボってしまいましたが、SikuliX(シクリックス)は画像が表示されるまで3秒待ち、それで画像が現れない場合強制停止します。


今回ですとブラウザの処理のため、ボタンを押すごとに本来は読み込み待ちが必要です。waitの処理を毎回挟むのが正解です。



Comments


bottom of page