1.はじめに
様々なサイトからデータ収集を頻繁に行っていると思います。これらのデータ収集を手動で取得する場合は、転記ミスや読み間違いが発生することがあり手間も掛かります。このような場合に簡単なフローでスクレイピング(Webサイトからデータ取集すること)する方法を記載します。
2.スクレイピング設定
Power Automate DeskTopを起動し、新しいフローをクリックしフロー名を入力し作成ボタンをクリックします。フロー名は任意で構いませんが、今回のフロー名は「スクレイピング」にします。下記の画面が起動すれば準備ができましたので設定を行いましょう。
2-1.Webサイト起動
アクションペインの「ブラウザー自動化」> Web フォーム入力 >「新しいMicrosoft Edgeを起動」アクションをダブルクリックします。(他にもChromeやFireFoxのブラウザ起動アクションが用意されていますので、使用してみてください。)
Mainフローに「新しい Nicrosoft Edge」アクションが作成され、子画面が表示します。
初期 URL:にデータ収集するサイトのURLを入力し、「保存」ボタンをクリックします。
今回は「https://www.nikkei.com/markets/」を入力します。
「新しい Microsoft Edge を起動]アクションに入力したURLがセットされています。
2-2.Webサイトからデータを抽出
データ収集するサイトをブラウザで開きます。これを行っていない場合は、エラーが発生しますので必ずサイトをブラウザで開いてください。
データ収集するサイトをブラウザで開いていることを確認後、アクションペインの「ブラウザー自動化」> Web データ抽出 >「Web ページからデータを抽出する」アクションをダブルクリックします。Web ページからデータを抽出する画面が起動しますが、この画面はこのまま閉じずに先ほどブラウザで開いたデータ収集するサイトに戻ります。
データ収集するサイトに戻ると「ライブWebヘルパー」が起動します。
この画面でデータ収集するサイトからスクレイピングによりデータ要素を選択し値を抽出します。
NYダウ(ドル)の値にカーソルを合わせて赤枠が表示後に右クリックし、「要素の値を抽出」>「テキスト」をクリックします。
ライブWebヘルパー画面にNYダウの値が表示されました。
同じように、ナスダックの値にカーソルを合わせて赤枠が表示後に右クリックし、「要素の値を抽出」>「テキスト」をクリックします。
ライブWebヘルパー画面にナスダックの値が表示されました。
「終了」ボタンをクリックしライブWebヘルパー画面を閉じます。
Power Automate DeskTopのWebページからデータを抽出する画面に戻り「保存」をクリックします。
「Webページからデータを抽出する」アクションにサイトの要素を変数にセットする設定を行いました。
2-3.Webサイトをクローズ
アクションペインの「ブラウザー自動化」> Web フォーム入力 >「Webブラウザーを閉じる」アクションをダブルクリックします。
Webブラウザーを閉じる画面が起動しますので「保存」ボタンをクリックします。
「Webブラウザーを閉じる」アクションの設定が完了しました。
ここで忘れずに「保存」をクリックし、フローを保存します。
3.スクレイピングの実行
フローを実行する前に、Edge(ブラウザ)を閉じていることを確認し、フロー変数:DataFromWebPageに値がセットされていないことを確認してください。それでは、「実行」をクリックしフローを実行します。
フロー変数:DataFromWebPageに値がセットされています。赤枠内をダブルクリックします。
サイトから設定した要素の値を取得できました。
4.まとめ
今回は、Power Automate DeskTopを使用して簡単なスクレイピングする方法を記載しました。サイトからデータ抽出までのフローですが、抽出したデータをExcelに出力するフローを追加すればよりデータ活用が便利になりますね。
最後に、スクレイピングの注意点を記載します。
1.法律を遵守する
著作権法と業務妨害罪(信用及び業務に対する罪)に抵触する可能性があるため、
注意をお願いします。
2.Webサイトの利用規約を遵守する
Webサイトの利用規約で禁止されている場合は、スクレイピングしないように
注意をお願いします。
|
|
|
コメント