にほんブログ村 IT技術ブログへ
にほんブログ村

Linux ブログランキングへ

2021年11月12日

SikuliXで他のブログラムをサブルーチンとして呼び出して使う方法 RPA その1


今回はSikuliXで他のブログラムをサブルーチンとして呼び出す方法。
それらしい事は色々なサイトに書いてありますが、どうも理解出来ないw
やってみると意外と便利で使いまわしが簡単になるので良いです。
SikuliXは細かい使い方がいまいち日本語情報が少なくてやりにくいですけど

●SikuliXのサブルーチン
プログラムは長いとウザいですが、RPAの場合はどうしても長くなりがち。
なのでサブルーチン的な使い方をしたいのですが、
意外と検索エンジンにヒットしてこない。本にも書いてない。

しかもこのプログラムを延々と伸ばすのも、
小さい単位にして組み合わせた方が便利。
ここなどを参考に書いてみましょう。感謝。

https://inkoblog.com/how-to-reuse-sikulixscript/

●サブルーチン化
メインとなるコードとサブルーチンとするコードを書きます。割愛
(サブルーチン名)には作ったファイル、フォルダ名をそのまま。
文頭の3行と呼び出すサブルーチンのPathをsys.path.append()を
前もってフルパスで指定しておかないと認識しませんので注意

・メインルーチン側

# -*- coding: utf-8 -*-
import sys
from sikuli import *

sys.path.append(r:"C:\Users\(ユーザー名)\(サブルーチン名).sikuli")

import (サブルーチン名)


ざっくりですが、ここまで。
最後のimport (サブルーチン名)の行でサブルーチンのプログラムを実行しますw
Pythonってそういう文法だったっけ?

・サブルーチン側

# -*- coding: utf-8 -*-
import sys
from sikuli import *

{プログラム本体}


という形にして最初の3行は必要です。
間違っているとエラーが出るはずです。
むしろエラーが出まくるので原因がわからなかったり。

●まとめ
これでプログラムをぶった切って、つないでリサイクル出来ます。
なんかPythonのややこしい所とSikuliXのややこしい所が合体して
よくわかりませんよね。プログラムの書き方がw

でサブルーチンを実行する部分がimport サブルーチン名
ってなんじゃそりゃー。
Pathも書かないとどこにサブルーチンがあるか分からないエラーが出る。
サブルーチンが1つ、2つ、3つと増えればPath行もそれだけ必要です。
なぜならプログラムが*.pyだけじゃなくてフォルダー単位なのがSikuliXの特徴だからです。
余計わかりにくい・・・
まあ作ってみて慣れましょうか。
動きゃOKです・・・
posted by kapper at 21:23 | Comment(0) | Python
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

にほんブログ村 IT技術ブログへ
にほんブログ村

Linux ブログランキングへ