こんにちは、たびとです。
最近、Power Automate を使った自動化の記事を見かけることが多くなったので、 実際に使ってみました。
Windows 11 は最初からインストールされています。Windows 10 の場合、Microsoft Store からダウンロードできます。
この記事の対象者
- RPAによる自動化ツールに興味のある方
- Microsoft Power Automate を使ってみたい方
Power Automate のアクティベート
Power Automate アイコンをクリックすると更新が始まります。
Microsoft アカウントでサインインします。
Power Automate のアクティベートが始まるので、次へボタンをクリックします。
国/地域の選択から日本を選択し、開始するをクリックします。
クイックツアー
クイックツアーを開始するかどうかのダイアログが表示されます。 まだ見たことがなければ、軽く見ておくと良いと思います。
新しいフローを作成します。このフローが自動化を実行する単位になります。
フロー名を適当に「サンプル」と入力します。 後で変更・削除できるのため、適当な名前で構いません。
フローを作成するため、デスクトップ フローデザイナーの使い方が説明されます。
左メニューに表示されたアクションを組み合わせることで、自動化を実現することができます。
フローのステップを記録するでは、キーボードとマウスの操作を記録・再現することができます。
アクションをまとめてサブフローとすることができます。
アクションに変数を利用することができます。
UI要素を取得することができます。 例えば、ブラウザのHTMLの要素を解析して、要素を取得して、フォームに文字列を入力することができます。
画像を使った自動化をアクションを利用することができます。
作成したフローをデバッグすることができます。
作成したフローを保存することができます。
フローの操作
Power Automate コンソールのクイックツアーです。
作成したフローの一覧を表示されます。画面サイズを小さくしていたため、フロー名が表示されていませんが、実際にはフローが表示されます。
作成したフローを実行・停止を管理することができます。
「例」をクリックすると、Microsoft から提供されているフローのサンプルを参考にすることができます。
Power Automate の設定を行います。
フローが増えてきた場合、キーワード検索を実行することができます。
簡単なフローを作ってみる
最近、WSL Ubuntu の 20.04 と 22.04 に docker 環境を構築して、切り分けて利用しているため、 docker サービスの起動を手動にしていましたが、これを Power Automate を使って自動化するフローを作ってみることにします。
Power Automate を起動し、「新しいフロー」をクリックします。 フロー名は「docker サービス起動」とし、「作成」ボタンをクリックします。
左側のアクションから CMD セッション を開き、CMD セッションを開くを選択します。 何も編集せずに、そのまま「保存」ボタンをクリックします。
次に「CMD セッションに書き込む」を選択し、コマンドに docker サービスの起動コマンドを記述します。
wsl -d Ubuntu -u root -- service docker start
ディストリビューション名は適宜変更してください。
最後に「CMD セッションの終了」を選択し、保存ボタンをクリックします。
ここで、WSL Ubuntu コンソールを開き、docker サービスが停止していることを確認します。
$ service docker status
* Docker is not running
フローデバッグを実行し、docker サービスが起動することを確認します。
WSL Ubuntu コンソールで、docker サービスが起動していることを確認します。
$ service docker status
* Docker is running
フローが正常に動作した場合、保存ボタンを押して終了します。
フローの作成画面を閉じると、フローの一覧が表示されて、先ほど作成した「docker サービス起動」のフローが表示されます。 通常、ここからフローを実行します。
まとめ
今回の docker サービス起動以外にも、Synology NAS の Web にログインするフローを作ってみましたが、意外と簡単にできました。 これは仕事でもいくつもの Web サイトにログインして情報を参照するときに、フローを作ると面白いことができそうです。
Web 絡みだと、フォーム入力と表示された情報を解析するスクレイピング処理が面倒ですが、 Power Automate を使うと、簡単に処理することができそうです。
このように、Power Automate は使い方によっては便利だと思いますが、 無料版は Windows 起動時にフローを実行することができないのが残念です。
どちらも、そんなに使い込んではいませんが、 ブラウザのログインを自動化するような場合、 Power Automate は GUI で完結しますが、 Automator は、キー入力スクリプトを使う必要があります。 どちらも、一長一短あると思いますが、色々と使い込んでみると面白いことができると思います。
では、皆さん、よい旅を。