ウェブサイトの更新確認を Power Automate で雑に作ってみる

経緯

実用性はほぼない、思いつきのネタです

説明

SharePoint 上にリスト名「ウェブサイトリスト」として、下記の設計で作成

種類 備考
Title 1 行テキスト 初期作成時のまま
更新日時 日付と時刻 初期作成時のまま
登録日時 日付と時刻 初期作成時のまま
URL 1 行テキスト 追加列
Data 複数行テキスト 追加列、書式なしテキスト
登録者 ユーザーまたはグループ 初期作成時のまま
更新者 ユーザーまたはグループ 初期作成時のまま

はじめに、フローの前半部分の説明

  • 繰り返しはチェックしたい間隔に設定
  • 変数 ID は SharePoint のアイテム ID を保持するので整数として初期化
  • 変数 Title, URL, Data, NowData は文字列として初期化

続いてリストからアイテムを取得

取得したリストアイテムをあるだけ繰り返す

全体はこのような感じ

最初の変数の設定は、SharePoint から取得したアイテムの値をセット

変数 URL をソース URL として、OneDrive for Business にファイルを保存

OneDrive for Business に保存したファイルを取得し、変数 NowData にセット

HTML からテキスト部分だけ取得

改行コード(LF)を省いて、変数 NowData に再セット

値の式は下記の通り

uriComponentToString(replace(uriComponent(outputs('Html_to_text')?['body']),'%0A',''))

SharePoint から取得した変数 Data と、現在取得した NowData を比較して、値が変わっていたら SharePoint のアイテムを更新して、更新通知を送る

今回は色々面倒だったので、メールで通知した

考察

このやり方だと、サーバーサイドで毎回違う情報が吐き出されていたら使えないね

参考サイト