こんにちは!UiPath メンターです。
「毎日、管理画面の売上数字をコピーして、Excelに貼り付ける……」
そんな単純作業、うんざりしていませんか?
第6回の今回は、Webサイト上に表示されている文字や数字、さらには「一覧表(リスト)」をごっそり抜き取る技術を学びます。
専門用語で「スクレイピング」と言いますが、UiPathなら難しいコードは一切不要。
欲しいデータをクリックしていくだけで、ロボットが代わりにコピー作業を行ってくれます。
1. 1つの情報を抜き取る:「テキストを取得」
まずは、画面上にある「特定の文字(例:検索件数、商品価格、エラーメッセージなど)」を1つだけ読み取る方法です。
手順
- [アクティビティ] パネルで「テキスト」と検索します。
- [テキストを取得 (Get Text)] をドラッグ&ドロップします。
- 前回学んだ通り、[画面上でターゲットを指定] をクリックし、読み取りたい文字を選択します(アンカーも忘れずに!)。
読み取った文字を保存する
ここが重要です。読み取っただけでは、ロボットはすぐにその情報を忘れてしまいます。
「変数(箱)」に入れて保存しましょう。
- [テキストを取得] アクティビティのプロパティパネルを見ます。
- [出力] > [保存先] の欄をクリックします。
- Ctrl + K を押し、変数名(例:
str_Result)を入力してEnterを押します。
これで、画面上の文字が str_Result という箱に格納されました!
あとは [メッセージ ボックス] などを使って表示させれば、正しく取れたか確認できます。
2. リストを一括取得:「表データを抽出」
次は、検索結果の一覧や、商品のリストなど、たくさんのデータを一度に取得する方法です。
これはアクティビティを配置するのではなく、専用のウィザード機能を使います。
例として、Googleの検索結果や、Amazonの商品一覧ページなどを開いておいてください。
手順
- UiPath Studioの上部メニューにある [表データを抽出 (Table Extraction)] ボタンをクリックします。
- [抽出ウィザード] が起動します。
- [データを追加] をクリックし、リストの1行目のデータ(例:1つ目の商品名)をクリックします。
- 「パターンを識別しました…」のようなメッセージが出たら「はい」を選びます。出ない場合は、2行目のデータもクリックして教えてあげます。
- 自動的にリスト全体が青枠で囲まれます!
URLも一緒に取りたい?
文字だけでなくリンク先(URL)も取得したい場合は、設定画面の歯車マークなどで「URLを取得」にチェックを入れることができます。
最後に [保存して Studio に戻る] をクリックしましょう。
3. データテーブル (DataTable) という巨大な箱
Studioに戻ると、自動的にアクティビティが作られています。
ここで注目してほしいのが変数の型です。
先ほどの「テキストを取得」では String(ただの文字列)でしたが、表データを抽出した場合、変数の型は DataTable になります。
💡 メンターからのアドバイス:DataTableとは?
DataTable は、「メモリ上のExcelシート」だとイメージしてください。
行と列があり、たくさんのデータが整理されて入っています。
UiPathでは、この「DataTable」をそのままExcelファイルに書き出したり、繰り返し処理で1行ずつ使ったりします。
4. 次ページも自動で?「ページネーション」
検索結果が何ページにもまたがること、ありますよね?
UiPathの抽出ウィザードは、自動で「次へ」ボタンを押して、全ページのデータを取ってくる機能も持っています。
ウィザードの途中で「データは複数ページにわたりますか?」と聞かれたら、[はい] を選び、画面上の [次へ >] ボタンを指定するだけ。
これだけで、ロボットは勝手にページをめくりながらデータを集めてくれます。
今回のまとめ
- 単一のデータ取得には [テキストを取得] を使う。
- リストや表の取得には [表データを抽出] ウィザードが最強。
- 表データは
DataTableという特別な型の変数に保存される。
⚠️ つまづきポイント:プレビューと違う?
「表データを抽出」のプレビュー画面では綺麗に取れていても、実際に実行すると一部のデータが抜けていることがあります。
これはWebページの読み込みが遅い場合に起こりがちです。プロパティの「遅延」設定を調整するか、次章以降で学ぶ「待機」のテクニックが必要になります。
さあ、これで「データの取得」までできました。
しかし、取得したデータはまだロボットのお腹の中(メモリ)にあるだけです。
次回からは第3章「Excel業務の完全自動化」。
いよいよ、取得したデータをExcelファイルに書き込んだり、Excelからデータを読み込んだりします。
実務への応用が一気に広がりますよ!