Power Automate Desktopは、Microsoftから無償で提供されている、作業を自動化するツールです。
この記事では、Power Automate Desktopを使って、高配当株を分析するためのニワトリリストを自動作成するフローを作ります。
3回に分けて記載します。今回は、2回目です。
前回:【Power Automate Desktop】高配当株を分析するためのニワトリリストを自動作成したい(1/3)

課題:高配当株を分析するためのニワトリリストを自動作成したい

coffeeさん、ニワトリリストの自動作成フローはできそうですか?
cocoa 700x700 with name
coffee 700x700 with name
はい、Power Automate Desktopを使ってフローが完成しました。今、テストをしているところです。
もうフローができましたか。早いですね。           
cocoa 700x700 with name
coffee 700x700 with name
「Webページからデータを抽出する」アクションのライブWebヘルパーによって簡単にフローを作成することができます。

解決策

前回は、Power Automate Desktopを使って、次のフロー全体のうち、1番までを作成しました。

  • 1.ブラウザを起動してYAHOOファイナンス配当利回りランキングへ移動する
  • 2.Webページからデータを抽出し、Excelスプレッドシートへ出力する
  • 3.IR BANKのリンクを出力する

今回は、上記「2.Webページからデータを抽出し、Excelスプレッドシートへ出力する」の作り方を説明します。

作り方

ブラウザを起動してYAHOOファイナンス配当利回りランキングを開く

Microsoft Edgeで、YAHOOファイナンス配当利回りランキング(次のURL)を開きます。
https://finance.yahoo.co.jp/stocks/ranking/dividendYield

01-0060 yahoo

「Webページからデータを抽出する」アクションの利用を開始する

Power Automate Desktopを起動し、左側の「アクション」から、ブラウザー自動化 ⇒ Webデータ抽出 ⇒ Webページからデータを抽出する、を真ん中へドラッグ&ドロップします。すると、次のウィンドウが開きます。
02-0010 extract data from web page

この状態で、YAHOOファイナンス配当利回りランキングを開いているMicrosoft Edgeをクリックします。すると、ライブWebヘルパーなる画面が起動します。ライブWebヘルパーを使って抽出のためのデータを取得します。「Webページからデータを抽出する」画面からMicrosoft Edgeをクリックすることで、データを抽出する対象のWebページを認識する仕様になっているようです。

02-0020 live web helper

このライブWebヘルパーを使うことで、Webページのデータを抽出するフローを容易に作成することができます。

企業の名称を抽出する

Webページの上にマウスを置くと、Power Automate DesktopがWebページの構成要素を認識します。認識した構成要素に赤枠がリアルタイムで表示されます。
まず、配当利回りの一覧表の1番の企業の名称にマウスを置きます。
次に、右クリックして、要素の抽出⇒テキスト、をクリックします。
02-0030 select text

すると、ライブWebヘルパーの画面上に選択した企業名が読み取られます(この場合、日本郵船(株))。抽出のためのデータが1つ取得されました。
02-0035 live web helper with 1st company

さらに、配当利回りの一覧表の2番目の企業の名称(この場合、明和産業(株))にマウスを置きます。
そして、右クリックして、要素の抽出⇒テキスト、をクリックします。
02-0040 extract data from web page

すると、一覧表の企業名すべてがいっぺんにライブWebヘルパーの画面上に自動的に読み取られます。2個目のデータを取得した時点で、パターンを認識して3個目以降のデータを取得する仕様になっているようです。たった2回の操作で全て読み取ってくれるので、大変楽ができます。
02-0040 live web helper with all company

企業の株式コードを抽出する

ライブWebヘルパーによって一覧表に表示された企業の名称をすべて読み取ることができました。
次は、企業の株式コードを読み取ります。株式コードは、後で作成するIR BANKのリンクに使用します。
まず、YAHOOファイナンス配当利回りランキングの一覧表の1番の企業の株式コードにマウスを置きます。
次に、右クリックして、要素の抽出⇒テキスト、をクリックします。
02-0060 extract data from web page

すると、一覧表の株式コードすべてが、ライブWebヘルパーの画面上に自動的に読み取られます。
企業名をすべて読み取った後なので、1回の操作で全て読み取ってくれます。大変楽です。
02-0070 live web helper with all stockNumber

ページャーを設定する

YAHOOファイナンス配当利回りランキングの一覧表は1ページでは収まらず、複数ページにまたがっています。
1ページ目以降のページのデータを抽出したい場合は、ページャーを設定します。
YAHOOファイナンス配当利回りランキングの一覧表の最下部に、「次へ」ボタンがあります。これがページャーです。
この「次へ」にマウスを置きます。
右クリックして、要素をページャーとして設定、をクリックします。
02-0080 set pager

これで、ページャーの設定が完了しました。
最後に、ライブWebヘルパーの完了ボタンをクリックします。

処理するWebページの最大数、データ保存モード、を設定する

YAHOOファイナンス配当利回りランキングの一覧表は1ページにつき50企業のデータが存在します。
お客様の要求では、600企業のデータをリストアップしたいとのことだったので、600÷50=12ページ分のデータを抽出します。
そのため、処理するWebページの最大数、を12に設定します。なお、「処理するWebページの最大数」は、ライブWebヘルパーで、ページャーの設定をすると現れる入力欄です。
また、データをExcelに出力したいため、データ保存モード、を「Excelスプレッドシート」に設定します。
02-0090 extract data from web page

保存ボタンをクリックすると完了です。
フローに、Webページからデータを抽出する、が追加されます。
02-0100 flow

実行

この時点で一旦、実行(▷)してみます。
その結果、Excelに600件の企業の名称と株式コードが出力されます。
02-0110 excel

以上で、「2.Webページからデータを抽出し、Excelスプレッドシートへ出力する」の作成は完了です。
次回は、「3.IR BANKのリンクを出力する」を作成します。
(続く)

まとめ

Webページのデータを抽出してExcelスプレッドシートに出力するためには、「Webページからデータを抽出する」アクションを使用します。
ライブWebヘルパーを使って、簡単にフローを作成することができます。

参考

【初心者向け】高配当株の「分析ツール」の使い方をカンタン解説【株式投資編】:(アニメ動画)第130回
【初心者向け】「分析ツール」を使った日本の高配当株の見つけ方をカンタン解説!