Webサイトの表の中にあるリンクをクリックする
例えば、WebベースのEDIシステムなど、下記の様に表の中にリンクが現れることがあります。
これをクリックする方法です。
A2019のユニバーサルレコーダーを使ってキャプチャすると、下記の様にテーブルとして認識します。
HTMLの表をキャプチャ |
---|
![]() |
そして、「テキストでセルをクリック」だったり、「インデックスでセルをクリック」というアクションがあり、
行けそう!と思うのですが、残念ながら、表の中の文字にリンクが設定されている場合は利用できません。
*下記の楽天トラベルWebサイトのカレンダーコントロールのように、文字の上ではなく、セル自体にリンクが設定されている場合は、「テキストでセルをクリック」や「インデックスでセルをクリック」が使えます。
では、どうしよう?
下記の様に処理する事で、目的のリンクをクリックすることが出来ます。
ステップ1 テーブルとしてデータを取得
まず、クリックしたい対象を特定する必要がありますので、テキストデータを取得します。
これは、1アクションですね。レコーダー:キャプチャで表を指定し、アクションで「テーブルを取得」、テーブル型変数を作成して指定します。
ステップ2 ループでデータを確認しながら、該当のところをクリック
ここでは、「オートメーション福岡」の注文データにアクセスしてみますが、
ループで順次値を確認しつつ、目的の行数を特定し、DOMXPathで指定することで実現しています。
ID | アクション | 説明 |
---|---|---|
1 | ループ | 前のステップで取得したテーブル変数のデータを1行目から順に処理します。![]() |
|
| 2 | IF | テーブル変数の1列目の値を確認し、目的のアイテムの場合に処理をする。
ここでは、「オートメーション福岡」かどうかをチェックしています。
|
| 3 | 数字:文字列に変換 | カウンターの値(何行目が目的の値なのか)を、文字列変数に変換します。
|
| 4 | メッセージボックス | ここは、確認用にデータを表示。
|
| 5 | レコーダー:キャプチャ | ここが肝の処理です。
レコーダー:キャプチャを使って、リンク部分のテキストをキャプチャします。
それにより、HTMLの<A href>の部分が取得できます。
クリックしたい行数が既に取得できていますので、その行のデータをクリックするように、カウンター用の変数を使って指定します。
尚、HTML InnerTextやHTML Hrefなどのように、変動する要素がある場合は、「オブジェクトのプロパティ(x/x)」を展開してチェックを外してください。
|
| 6 | インクリメント | カウンター用に作っている数字変数を+1する
|
コメント・・・
他にもやり方はあるかと思いますが、参考になればと思います。