『テキストをクリック』でテキストが見つかりません とエラーになる

いつもお世話になっております。

社内web上で、指定文字列を探し、その文字列をクリックするという動作を希望しております。
文字列は画面になく、スクロールすれば出てくる場合もあります。

現在、範囲の指定は、検索範囲全体を赤く囲い、
文字列は、検索文字列をダブルクォーテーションで囲い指定しています。

image
image

どの様にすれば良いか教えて頂きたくよろしくお願い致します。

こんにちは

テキストをクリックの対象は、画面スクレイピングのNativeモードと同様であったと思いますので
まずは画面スクレイピングウィザードのNativeモードで対象を取得してみて、文字列が存在
しているかを確認してみてはと思います。

ただこの方法よりも、条件次第ですが、子要素を探すアクティビティ等で対象要素を探した方が良いかもしれません。

1 Like

お世話になっております。
いつも本当にありがとうございます。

画面スクレイピングで画面全てを選択し、クリップボードにコピー⇒Excelへ貼り付けで試しました。
対象となる文字列は検出されました。

子要素を探す を、ネットで検索し、トライしましたが、使い方が全く分かりませんでした。。
セレクター・・・要素を探す等で範囲指定し、そのセレクターをコピー?と思いましたが、
範囲が画面下まで長く、スクロールしなければ全範囲を指定できず、止まってしまいました。

フィルター・・・要素を探すで取得したセレクターのUIExplorerを見ましたが、分かりませんでした。

自力では何もできず情け無い限りです。
どうか教えて頂けないでしょうか。

以下の画面で、子コードの列で一致した文字があれば、その文字をクリックしたいです。
文字にはリンクが貼られています。

こんにちは

Webでしたらデータスクレイピングで内容をDataTableとして取得できないでしょうか?
これができれば、こちらのアプローチの方が良いように思えます。

1 Like

ありがとうございます。

やり方が悪いのか、Excelへ書き出すとA1セルに全て書かれていています。

こんにちは

データスクレイピングの設定を行うとき、対象要素としてtableを指定できますでしょうか?
ターゲット要素がTableになるように、指定する場所を変化させてみてはと思います。

あるいは表全体を取り込むのではなく、一列づつ取り込んでも同様でしょうか?
構造自体はTableの様に見えますので、うまく取り込めそうには見えますが...

1 Like

ありがとうございます。

対象設定する際に、セルを1つ選択せず、表全体をいきなり選択したことが誤りだったようです。
データテーブルとして読み込めました。

こんにちは

データテーブルとして読めたら、最も単純には、それをForEachRowでイテレートする

そのループの中で、対象の列の内容に、ターゲットとする文字列が存在するか確認する

CurrentRow("列名").ToString.Contains(strTarget)

のような条件分岐です。

内容が合致するれば、その行番号(あらかじめForEachRowアクティビティでセットしておく)から、クリックしたい要素のセレクターを動的に生成してクリックする。
おそらく各行は、セレクター上で tableRow属性で指定できると思うので、それを利用すると良いと思います。(UiExplorerで確認してください。) DataTableの行番号とは、ずれていると思いますので、その分は計算で補正してください。

といった流れになるかと思います。

1 Like

いつも本当にありがとうございます。

お陰様で無事に該当部分をクリックすることが出来ました。
大変勉強になりました。

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.