Posted at

【はじめてのUiPath】セレクターを動的に変更してみる(変数・ワイルドカード)

こんにちは!

今回はUiPathでセレクターを動的に変更するやり方を書きたいと思います!

同じことをやるんだけど、アプリが違ったりサイトが違ったりするとセレクターが変わってしまってうまく認識してくれないんですよね。

というわけで、さっそくいきましょう!!

ワイルドカードの知識はある前提でいきますよぉぉぉぉおお!


セレクターの書き方(ワイルドカード編)

https://google.comでスクリーンショットをとるとします。

ちなみに、UiPathには「スクリーンショットを撮る」というアクティビティがあります。

「スクリーンショットを撮る」アクティビティで、https://google.comを選択するとこんなセレクターが抽出されました。

<html app='chrome.exe' title='Google' />

<webctrl id='viewport' tag='DIV' />

スクリーンショットを撮りたいサイトがすべて「Google」から始まるタイトルだとしましょう

その場合はセレクターはこのように変更します。

<html app='chrome.exe' title='Google*' />

<webctrl id='viewport' tag='DIV' />

Googleの後にアスタリスクを付けました。

逆にGoogleで終わる文字列であればこうなります。

<html app='chrome.exe' title='*Google' />

<webctrl id='viewport' tag='DIV' />

逆に逆に、文字列の中にGoogleって必ず入っていればこうなります

<html app='chrome.exe' title='*Google*' />

<webctrl id='viewport' tag='DIV' />

Googleとあと一文字の場合はこうなりますね!

<html app='chrome.exe' title='Google?' />

<webctrl id='viewport' tag='DIV' />

まあそんな感じです。


セレクターの書き方(変数編)

セレクターに変数を埋め込んでいきましょう!!

先程のこいつを使います。

<html app='chrome.exe' title='Google' />

<webctrl id='viewport' tag='DIV' />

タイトルの部分を変数にしていきましょう。

UiPath Studioからみるとこんな感じです。

UiPath Studio - スクショ自動化 2019_05_16 15_03_41.png


  1. まずは、改行を全て消します!!

<html app='chrome.exe' title='Google' /><webctrl id='viewport' tag='DIV' />


  1. つぎに一番左と一番右にダブルクォーテーションをつけます!

"<html app='chrome.exe' title='Google' /><webctrl id='viewport' tag='DIV' />"


  1. 変数にした文字列を" + 変数 +"に置き換える(ここで変数はvariableと示すことにします)

"<html app='chrome.exe' title='" + variable + "' /><webctrl id='viewport' tag='DIV' />"


  1. これをセレクターに貼り付ける!!

以上です!!

セレクターがいろいろ使いやすくなると、超幅が広がるらしいですよ~

というわけで、みなさんもやってみてください!