【Sikuli/Sikulix】日本語の取り扱い方法について

Sikuliでの日本語取り扱い方法について詳しくご説明します。

 

Sikuli関係の記事はこちら

 

スポンサーリンク

typeメソッドでの日本語取り扱い

typeメソッドでは、type(text)とtype(画像選択,text)が用意されています。しかし、このtypeメソッドでは日本語文字を取り扱うことができません

 

pasteメソッドでの日本語取り扱い

pasteメソッドでは、paste(text)とpaste(画像選択,text)が用意されています。pasteメソッドでは日本語文字を取り扱うことができます

しかし下記例の様にそのままtext部分に日本語を入力しただけでは文字化けしてしまいます。

 

【Sikuli記載例】

 

【実行例】

 

では日本語を取り扱うにはどうすればよいのか。。。簡単です。先頭に「u」と記載するだけです。

 

【Sikuli記載例】

 

【実行例】

 

ただし、Excelから読み込んで処理する場合、Excelに記載されているのが日本語でも「u」を記載する必要はありません。

 

【Sikuli記載例】

 

【読み込みExcel例】

 

【実行例】

 

popupメソッドでの日本語取り扱い

popupメソッドでは、ポップアップ画面をメッセージ付きで表示させることができます。変数にきちんと値が入っているかの確認などに便利なメソッドです。popupメソッドでも日本語を取り扱うことができます

日本語の前に「u」を記載します。

なお、pasteメソッドと同様にExcelから読み込んで処理する場合、Excelに記載されているのが日本語でも「u」を記載する必要はありません。

 

【Sikuli記載例】

poppup(u”リンゴ”)

 

【実行例】

 

printメソッドでの日本語取り扱い

printメソッドを用いると、「メッセージウィンドウ」にメッセージとして表示することができます。しかし、その他のメソッドと同様にuをつけるだけでは表示することができず、エラーが発生してしまいます。

printメソッドを使ってメッセージウィンドウに日本語を表示させたい場合は、下記を記載します。

 

【Sikuli記載例】

import sys,codecs
sys.stdout = codecs.getwriter(“utf-8”)(sys.stdout)

print u”日本語”

 

【実行例】

※ただし、自身で動作確認してみると初回は実行例の様に日本語がちゃんと表示されますが、もう一度実行してみると文字化けして表示されるようになってしまいます。すこし使いにくく、popupメソッドで代用するのがよい様に感じました。

 

Sikuli関係の記事はこちら

スポンサーリンク