Power Automate Desktop for Windows 10のシリーズ、前回はアクションの一覧をざっと眺めてみました。
今回はWebページからデータを抽出する方法を確認してみます。WinActorのテーブルスクレイピングライブラリ相当の内容となります。
(2021/3/17時点、バージョン2.6.00158.21069に基づいた内容になりますので予めご了承ください。)
対象のWebページ
情報を取得するWebサイトのサンプルとして、Yahoo!天気・災害の地震情報を利用しました。地震履歴の一覧をExcelシートにコピーする。というフローを作りたいと思います。

フロー作成

Power Automate Desktop を起動します。
左上の「新しいフロー」をクリックします。

フロー名を入力し、「作成」をクリックします。
ここでは「test_flow_excel」という名前にしました。

「test_flow_excel」がフローの一覧に追加されました。編集のウィンドウも表示されます。

フローの編集ウィンドウが表示されました。(正式な名前は何でしょう??)

[Web オートメーション] – [新しいMicrosoft Edgeを起動する]のアクションを使って、ブラウザを起動します。
初期URLとして、地震の履歴ページのURLを指定します。
保存をクリックしてアクションの設定を閉じます。

[Web オートメーション] – [Web データ抽出] – [Web ページからデータを抽出する]アクションを設定します。
今回はExcelシートにコピーしたいので、データ保存モードに「Excel スプレッドシート」を選択しています。

この状態でEdgeを開くと、Edgeのウィンドウの他に、ライブWebヘルパーのウィンドウが開きます。
※画面はデータ保存モードが「変数」となっていますが「Excel スプレッドシート」と読み替えてください。

Edgeのウィンドウの横に、ライブWebヘルパーが開いた様子です。
※画面はデータ保存モードが「変数」となっていますが「Excel スプレッドシート」と読み替えてください。

ここで抽出対象のテーブル要素に枠を合わせて右クリックすると、抽出する要素の選択が表示されます。「HTMLテーブル全体を抽出」を選択します。
※画面はデータ保存モードが「変数」となっていますが「Excel スプレッドシート」と読み替えてください。

抽出プレビューに内容が表示されました!
これでフローの設定は完了です。
※画面はデータ保存モードが「変数」となっていますが「Excel スプレッドシート」と読み替えてください。
フローの実行
作成したフローを実行してみましょう。Edgeで地震の履歴一覧ページを表示し値を取得後、Excelが起動する動作となりました。2アクションで出来るとは…便利すぎますね。

動画でもご確認ください。
まとめ
今回は[Web オートメーション]の、2つのアクションを確認しました。
- [Web オートメーション]
- [新しいMicrosoft Edgeを起動する]
- [Web データ抽出] – [Web ページからデータを抽出する]
実際の業務でも特定のテーブルから値を抽出する場合があると思います。簡単に試すことが出来るのでぜひご確認ください。
良かったら他の記事も読んで頂けると嬉しいです。