
初心者向けGeeLark RPAガイド(4)
GeeLark RPAガイド
学習目標
- GeeLark RPAを使って、特定のボタンや入力欄、その他のページ上の要素を特定する方法を学びます。
- GeeLark RPAフレームワーク内で、ページ上の基本的な操作を行うためのさまざまなタップや長押しアクションの使い方を理解します。
- GeeLark RPAのさまざまな操作オプションの設定に慣れ、タスクテンプレートを柔軟に調整できるようにします。
学習のヒント
- この部分は内容が多く、とても重要です。一度に1つのアクションに集中して学習するのがおすすめです。
- 最初に要素の特定方法を学びましょう。これはタップや入力など、すべてのアクションの基礎となるものです。
- 各章の演習を使って実際に手を動かして練習してください。急いで一度にすべてを覚えようとしないでください。時間をかけて、根気強く練習し、試行錯誤を重ねましょう。それがGeeLark RPAの経験を積むための最良の方法です。
目次
1.要素
このチュートリアルでは、アプリのインターフェースを構成する部品を表すために、主に「要素」という用語を使用します。ただし、プログラミングの文脈では「ウィジェット」という用語の方が一般的であり、両者は同じ意味を持つことを知っておいてください。「ウィジェット」という用語は、AutoX.jsやGeeLark RPAのプログラミング関連の話題や機能を説明する場合にのみ使用します。
下の図では、6種類の要素が示されています。
1.テキスト:ラベルや情報テキストを表示するために使用されるTextViewウィジェットです。
2.画像:画像やアイコンを表示するために使用されるImageViewウィジェットです。3.複合ウィジェット:アイコンと説明テキストを組み合わせたボタンです。
4.入力フィールド:テキストを入力できるEditTextウィジェットです。
5.ボタン:「ログイン」や「送信」などのアクションを実行するために一般的に使用されるButtonウィジェットです。
RPAへの理解を深め、より多くのアプリのインターフェースを分析していくと、これら6つ以外にもさまざまな種類のウィジェットに出会うでしょう。ですが、まずは基本から始めましょう。

GeeLark RPAテンプレートを作成するとき、テキスト、属性、または座標を使用して要素を特定します。
- テキストで特定:最もシンプルな方法です。表示されているテキストに基づいて要素を検索します。この方法が機能するには、テキストが「Shop」や「Following」のように固有である必要があります。
- 属性で特定:IDや特定の値などの要素の属性を使用して検索します。アイコンのように表示テキストを持たない要素に便利です。
- 座標で特定:画面上の位置に基づいて要素を検索します。ほとんどの状況で機能し、非常に柔軟です。
2.要素の属性
クラウドスマホを起動し、TikTokを開いて、AutoX.jsがフローティングウィンドウモードで実行されていることを確認してください。AutoX.jsのセットアップ方法がわからない場合は、前回の章を参照してください。
手順 1:AutoX.jsのフローティングウィンドウアイコンをタップし、青い「レイアウト分析」ボタンを選択します。次に、「レイアウト範囲分析」を選択します。

ここで、画面上に緑色の枠が表示されます。これはAutoX.jsがインターフェース上の要素の特定に成功したことを示しています。

手順 2:「Shop」などの要素をタップし、メニューから「コントロール情報を表示」を選択します。

手順 3:各要素には異なる属性があります。以下は一般的に使用される属性とその説明です。
- クラス名(className):要素の種類やスタイル、例えばコントロールのカテゴリを示します。
- 説明(desc):要素の短い「ラベル」または「要約」です。ただし、すべての要素に説明があるとは限らないため、
desc属性が空の場合もあります。 - フルID(fullId):要素の「IDカード」のようなものです。要素に固有のIDがあれば、この属性がその識別子となり、GeeLark RPAが正確に特定できるようにします。ただし、注意が必要です。ページ上の複数の要素が同じフルIDを共有する場合があります。
- テキスト(text):要素に表示されるテキストです。「Login」「Create New Account」「Shop」など、ボタンやラベルによく見られます。

さまざまなページを探索し、いろいろな要素をタップして、その属性値を確認すると、それらがどのように機能するかをより深く理解できます。
3.要素の特定方法
3.1 テキストベースの方法
まずは簡単な例から始めましょう。テキスト(属性)を使って要素を特定してみます。TikTokのホームページに戻ると、テキストを含む領域が大きく3つあることに気づくでしょう。次に、これら3つの領域のボタンをクリックして、text属性の仕組みに慣れてみましょう。

手順 1:まず、GeeLark RPAテンプレートを作成します。TikTokアプリを開くステップを追加し、待機時間を設定します。(これらのステップにまだ慣れていない場合は、このチュートリアルから始めることをおすすめします。)

手順 2:「要素をクリック」アクションを追加します。セレクタを「text」に設定し、「Shop」「Profile」「Inbox」などの要素のテキストを入力します。最後に「OK」をクリックして保存します。


手順 3:テンプレートをデバッグして、動作を確認します。

演習:
TikTokのホームページにあるさまざまなテキスト要素をクリックして、テキストベースの要素特定方法に慣れてください。
タスクを実行するたびに、インターフェースを手動でTikTokのホームページに戻してください。こうすることで、すべてのテストが初期画面から開始され、RPAがタスクを実行する様子を観察しやすくなります。
3.2 要素のクリック
先ほどGeeLark RPAで「要素をクリック」オプションを使用しました。ここで、このオプションについて説明します。

使用例:
GeeLark RPAの「要素のクリック」オプションは、アプリ内のボタン、リンク、画像などの特定のUI要素のクリックをシミュレートするために使用します。
利用可能なすべてのオプションに圧倒される必要はありません。今の段階では、正しいセレクタの選び方と属性値の正しい入力方法に集中してください。今は他の設定は既定値のままにしておいてかまいません。学習が進み、GeeLark RPAのより高度なテクニックを学ぶにつれて、これらの設定を必要に応じてカスタマイズできるようになります。
| オプション | 説明 |
| セレクタ | fullId:要素の固有IDを使用して正確に特定します。 text:表示されているテキストに基づいて要素を特定します。明確な表示テキストを持つ要素に適しています。 desc:説明に基づいて要素を特定します。アイコン型のコントロールに最適です。 className:クラス名で要素を特定します。クラス名が固有の場合にのみ機能し、他のセレクタと組み合わせて使用されることがよくあります。 |
| セレクタ条件 | 完全一致(Equals):属性値と完全に一致するものを検索します。値が固定された要素に適しています。 含む(Contains):属性値の一部に一致するものを検索します。テキストや説明が動的な要素に適しています。 |
| 要素の順序 | 固定値:一致する要素のリスト内の位置によって、特定の対象要素を選択します。 間隔ランダム:一致する要素の指定範囲からランダムに要素を選択します。 |
| 待機時間 | 対象要素を検索している間に待機する最長時間(ミリ秒単位)を指定します。ページの読み込みが遅い場合は、この待機時間を長くします(例:5000ms)。 |
| 非表示要素を検索するかどうか | 画面に表示されていない要素(隠れている要素やスクロールが必要なコンテンツなど)を対象にできるかどうかを制御します。 「はい」を選択すると、スクロールしないと表示されないボタンをクリックできます。 「いいえ」を選択すると、現在画面に表示されている要素だけを操作できます。 |
| 結果の保存先 | 主な目的は、クリックアクションが成功したかどうかを記録することです。結果はブール変数に保存されます。true:クリック成功。false:クリック失敗。 |
| メモ | このステップの目的や機能をメモとして残し、後でレビューやデバッグをしやすくします。 |
ここまでで、こう思っているかもしれません。「テキストのないアイコンはどうやってクリックするんだ?」
心配いりません。それは、まだ属性ベースの要素特定方法を学んでいないからです。次に、GeeLark RPAでステップバイステップでマスターしていきましょう。
3.3 属性ベースの方法
GeeLark RPAで簡単なRPAテンプレートを使って、属性ベースの方法を学びます。
タスクは次の通りです:
- TikTokアプリを開く。
- 数秒待つ。
- 現在の動画に「いいね」を押す。
この実践的な例を通して、属性ベースの方法の核心的な使い方を簡単に理解できます。
手順 1:AutoX.jsのフローティングアイコンをクリックし、青い「レイアウト分析」ボタンをクリックして、「レイアウト範囲分析」を選択します。

手順 2:「いいね」アイコンをクリックし、メニューから「レイアウト階層で表示」を選択します。
この時点で、画面上にウィジェットの詳細のリストが表示されます。さらに、「いいね」ボタンの周りに赤い枠が表示されます。はっきりさせておくと、この赤い枠は私が描いたものではなく、AutoX.jsによって自動的に追加されたものです。現在調査しているコントロールを強調表示するためのものです。この赤い枠の中にあるウィジェットが、分析で注目する対象です。

この画面を初めて見たときは少し混乱するかもしれません。そこで、もう少し詳しく説明します。

1.縦棒と階層縦棒はUI要素の階層関係を表します。縦棒が1本増えるごとに、その要素がより深い階層にネストされていることを示します。例えば、最上位レベルにはFrameLayoutがあり、その下に子要素のLinearLayoutがあります。
2.折りたたみ/展開ボタン折りたたみまたは展開ボタンを使用して、選択した項目の子要素を表示または非表示にできます。展開や折りたたみを行うことで、要素の階層内での関係を簡単に理解できます。
3.要素ハイライトボックス「レイアウト階層」で要素を選択すると、実際のアプリインターフェース上のその要素に対応する領域が赤い枠で自動的に強調表示されます。これにより、選択した要素のアプリ内での正確な位置が表示され、正しいウィジェットを選択したかどうかをすばやく確認できます。

フレンドリーなお知らせ
GeeLark RPAで属性ベースの方法を使用する場合、ネストされた要素によく遭遇します。調査している要素に値が表示されない場合、正しい要素を選択できていない可能性があります。代わりにレイアウト階層を使用してみてください。探している要素は構造のより深い場所にネストされているかもしれません。
手順 3:画面を下にスクロールして、「いいね」ボタンのウィジェット情報を見つけます。他のウィジェットよりも濃い色で表示されているウィジェットは、現在選択されているウィジェット(「いいね」アイコンに対応するもの)です。この強調表示により、対象のウィジェットをすばやく見つけられます。

手順 4:強調表示された「ImageView」を長押しし、「コントロール情報を表示」を選択します。ポップアップのプロパティウィンドウに以下の情報が表示されます。
- desc属性値:Like
- fullId属性値:com.zhiliaoapp.musically:id/cf6 (注:fullIdの値はデバイスやバージョンによって異なる場合があるため、お使いのデバイスに表示される値を参照してください。)

手順 5:「要素をクリック」アクションを選択して、最もシンプルなテストフローを設定します。

GeeLark RPAで「要素をクリック」アクションを使用する場合、セレクタをfullIdまたはdescに設定し、AutoX.jsで見つけた属性値を入力できます。

ヒント:属性値をクリックすると、テキストが次の形式で自動的にコピーされます:fullId(”com.zhiliaoapp.musically:id/cf6″)、className(”android.widget.ImageView”)。引用符内の値だけを入力すればよいのです。

手順 6:忘れずにテンプレートをデバッグし、正しく実行されるか確認してください。

演習
下の画像で赤い枠で囲まれたアイコンをクリックするRPAテンプレートを作成してください。このテンプレートを通して、fullIdセレクタとdescセレクタを使って要素を特定する方法を学べます。一度に1つのアイコンだけをクリックし、AutoX.jsを使ってそのウィジェットに対応するfullIdまたはdesc属性を探す練習をすることをおすすめします。
「レイアウト階層で表示」を頻繁に使用してください。多くの要素はネストされています。属性値が多数空のままである場合、正しい要素を見つけられていない可能性が高いです。

セレクタの使用例
classNameセレクタには、よく使われるシナリオが2つあります。
1.固有の属性値:className属性値が固有の場合、それを直接使用してコントロールを正確に特定できます。例えば、下の画像に示すシナリオでは、入力フィールドのclassNameは「android.widget.EditText」です。「EditText」から、これがテキスト入力要素であることがわかります。この画面には入力フィールドが1つしかないため、クラスセレクタで要素を特定しても問題ありません。


補助的な特定:classNameセレクタを他のセレクタと組み合わせて、検索範囲を絞り込みます。
例えば、className値がcom.ui.editTextで、desc値がusernameのウィジェットを特定します。この組み合わせにより、対象のウィジェットをより正確に識別できます。

3.4 座標ベースの方法(座標をクリック)
テキストベースや属性ベースの方法が要素を正確に特定できない場合があります。そのような場合、GeeLark RPAでは画面の座標を使用して要素の正確な位置を特定できます。
先に進む前に、Androidデバイスの座標系を理解しましょう。図に示すように、点Aと点Bはそれぞれ座標(X, Y)で表されます。

手順 1:AutoX.jsのフローティングアイコンをタップし、青い「レイアウト分析」オプションを選択します。その後、「レイアウト範囲分析」を選択します。

手順 2:「いいね」アイコンをクリックし、メニューから「コントロール情報を表示」を選択します。

手順 3:bounds属性に(635, 755, 708, 828)と表示されます。これらは、選択した要素の左上隅(点A)と右下隅(点B)の座標を表します。

手順 4:手順3で「座標をクリック」アクションを選択して、最もシンプルなテストフローを設定します。

では、「座標をクリック」のX座標とY座標はどのように入力すればよいのでしょうか。RPAが画像の中心点(青い矢印で示す位置)を正確にクリックしたい場合は、中心点を計算する必要があります。
bounds属性は2つの隅(点Aと点B)の座標を提供します。A点またはB点の座標を使用すると、他の要素を誤ってクリックしてしまう可能性があります。


実は、中心点の座標は簡単に計算できます。例えば、点AのX座標が635で点BのX座標が708の場合、中心点のX座標は次のようになります。X = (635 + 708) / 2 = 671.5。同様に、Y座標は次のようになります。Y = (755 + 828) / 2 = 791.5。RPAの座標は整数でなければならないため、X = 671、Y = 791に丸めます。
正確に計算したくない場合は、中心点を大まかに見積もることもできます。例えば、X = 655, Y = 800やX = 660, Y = 792などです。座標が対象のウィジェットの領域内にあり、他の要素を誤ってクリックしない範囲であれば、それで十分です。

手順 5:最後に、テンプレートをデバッグします。

注意!
クラウドスマホのシステムごとに画面解像度が異なるため、同じウィジェットの座標がデバイス間で異なる場合があります。例えば、Android 10で「いいね」アイコンをクリックするRPAプロセスでも、Android 12で同じ座標を使用すると、誤って「コメント」アイコンをクリックしてしまう可能性があります。
テンプレートの安定性を確保するために、次のことをおすすめします。
- 可能な限り、テキストベースまたは属性ベースのセレクタを優先します。
- 座標ベースの特定を使用する場合は、バージョンの異なる複数のクラウドスマホシステムで座標をテストして正確性を検証します。
- 座標に誤差の余裕を持たせ、近くのウィジェットを誤ってクリックしないようにします。

テキストベース、属性ベース、座標ベースの方法をマスターすれば、AutoX.jsを使いこなし、GeeLark RPAで簡単なRPAテンプレートを構築できるようになるはずです。これ以降は、基本的な手順の一部を省略し、さまざまな操作オプションの使用例とその設定の目的の説明に焦点を当てます。操作オプションがより複雑な場合にのみ、例を使って詳しく説明します。
次に、新しい操作オプションを学ぶたびに、それをテンプレートに追加して、どのように機能するかを理解するために練習してください。この練習は、あなたのGeeLark RPAスキルの向上にきっと役立ちます。
4.要素の長押し

使用例:これは画面の要素を長押しすることをシミュレートするために使用します。通常は、メニューを開いたり、ウィジェットをドラッグしたりするなど、特別な機能をトリガーするために使用します。
| オプション | 説明 |
| セレクタ | fullId:要素の固有IDを使用して正確に特定します。 text:表示されているテキストに基づいて要素を特定します。明確な表示テキストを持つ要素に適しています。 desc:説明に基づいて要素を特定します。アイコン型のコントロールに最適です。 className:クラス名で要素を特定します。クラス名が固有の場合にのみ機能し、他のセレクタと組み合わせて使用されることがよくあります。 |
| セレクタ条件 | 完全一致(Equals):属性値と完全に一致するものを検索します。値が固定された要素に適しています。 含む(Contains):属性値の一部に一致するものを検索します。テキストや説明が動的な要素に適しています。 |
| 要素の順序 | 固定値:一致する要素のリスト内の位置によって、特定の対象要素を選択します。 間隔ランダム:一致する要素の指定範囲からランダムに要素を選択します。 |
| 待機時間 | 対象要素を検索している間に待機する最長時間(ミリ秒単位)を指定します。ページの読み込みが遅い場合は、この待機時間を長くします(例:5000ms)。 |
| 非表示要素を検索するかどうか | 画面に表示されていない要素(隠れている要素やスクロールが必要なコンテンツなど)を対象にできるかどうかを制御します。 「はい」を選択すると、スクロールしないと表示されないボタンをクリックできます。 「いいえ」を選択すると、現在画面に表示されている要素だけを操作できます。 通常は現在の画面のコンテンツを長押しするため、デフォルトの「いいえ」のままにしておいてかまいません。 |
| 結果の保存先 | 主な目的は、クリックアクションが成功したかどうかを記録することです。結果はブール変数に保存されます。true:クリック成功。false:クリック失敗。 |
| メモ | このステップの目的や機能をメモとして残し、後でレビューやデバッグをしやすくします。 |
5.座標の長押し

「要素の長押し」と同様に、このオプションは代わりに座標を使用して要素を対象にします。X座標とY座標の入力方法については、「3.4 座標ベースの方法」をお読みください。
6.テキストの入力

使用例:指定された入力フィールドやテキストボックスにテキストを入力するために使用します。例えば、ユーザー名、パスワード、検索キーワードなどです。この機能により、GeeLark RPAはフォーム入力や検索実行などのタスクを自動的に完了できます。
| オプション | 説明 |
| セレクタ | fullId:要素の固有IDを使用して正確に特定します。 text:表示されているテキストに基づいて要素を特定します。明確な表示テキストを持つ要素に適しています。 desc:説明に基づいて要素を特定します。アイコン型のコントロールに最適です。 className:クラス名で要素を特定します。クラス名が固有の場合にのみ機能し、他のセレクタと組み合わせて使用されることがよくあります。 |
| セレクタ条件 | 完全一致(Equals):属性値と完全に一致するものを検索します。値が固定された要素に適しています。 含む(Contains):属性値の一部に一致するものを検索します。テキストや説明が動的な要素に適しています。 |
| 要素の順序 | 固定値:一致する要素のリスト内の位置によって、特定の対象要素を選択します。 間隔ランダム:一致する要素の指定範囲からランダムに要素を選択します。 |
| 待機時間 | 対象要素を検索している間に待機する最長時間(ミリ秒単位)を指定します。ページの読み込みが遅い場合は、この待機時間を長くします(例:5000ms)。 |
| 非表示要素を検索するかどうか | 画面に表示されていない要素(隠れている要素やスクロールが必要なコンテンツなど)を対象にできるかどうかを制御します。 「はい」を選択すると、スクロールしないと表示されないボタンをクリックできます。 「いいえ」を選択すると、現在画面に表示されている要素だけを操作できます。 |
| コンテンツの種類 | 順序選択:1つの環境内に複数の入力ステップがある場合、順番にコンテンツを選択します。 環境順選択:各環境の入力順にコンテンツを選択します。 ランダム選択:提供された入力からランダムにコンテンツを選択します。 |
| 結果の保存先 | 主な目的は、クリックアクションが成功したかどうかを記録することです。結果はブール変数に保存されます。true:クリック成功。false:クリック失敗。 |
| メモ | このステップの目的や機能をメモとして残し、後でレビューやデバッグをしやすくします。 |
7.キーボード操作

使用例:フォームの送信やテキストボックスの内容のクリアなど、キーボードの特定のキーを押すことをシミュレートするために使用します。GeeLark RPAでは、入力後のクイックアクションやコンテンツ処理によく使用されます。
| オプション | 説明 |
| キーボードのキー | 「Enter」キーまたは「Delete」キーを押すことをシミュレートします。これはアクションの確認や、テキストボックスの内容の削除に使用されます。 |
8.要素が表示されるまで待機

使用例:ボタンやテキストボックスなどの特定の要素が表示されるまで待機するために使用します。これにより、GeeLark RPAで次のアクションを実行する前に、ページが完全に読み込まれたことを確認できます。
| オプション | 説明 |
| セレクタ | fullId:要素の固有IDを使用して正確に特定します。 text:表示されているテキストに基づいて要素を特定します。明確な表示テキストを持つ要素に適しています。 desc:説明に基づいて要素を特定します。アイコン型のコントロールに最適です。 className:クラス名で要素を特定します。クラス名が固有の場合にのみ機能し、他のセレクタと組み合わせて使用されることがよくあります。 |
| セレクタ条件 | 完全一致(Equals):属性値と完全に一致するものを検索します。値が固定された要素に適しています。 含む(Contains):属性値の一部に一致するものを検索します。テキストや説明が動的な要素に適しています。 |
| 要素の順序 | 固定値:一致する要素のリスト内の位置によって、特定の対象要素を選択します。 間隔ランダム:一致する要素の指定範囲からランダムに要素を選択します。 |
| 待機時間 | 対象要素を検索している間に待機する最長時間(ミリ秒単位)を指定します。ページの読み込みが遅い場合は、この待機時間を長くします(例:5000ms)。 |
| 非表示要素を検索するかどうか | 画面に表示されていない要素(隠れている要素やスクロールが必要なコンテンツなど)を対象にできるかどうかを制御します。 「はい」を選択すると、スクロールしないと表示されないボタンをクリックできます。 「いいえ」を選択すると、現在画面に表示されている要素だけを操作できます。 |
| 結果の保存先 | 主な目的は、クリックアクションが成功したかどうかを記録することです。結果はブール変数に保存されます。true:クリック成功。false:クリック失敗。 |
| メモ | このステップの目的や機能をメモとして残し、後でレビューやデバッグをしやすくします。 |
今日の内容はかなり多いので、時間をかけてじっくり読み進めてください。紹介したアクションを使ってGeeLark RPAでRPAテンプレートを作成し、それがビジネスニーズに合うかどうか試してみてください。

画像から動画生成














