← 手順一覧へ戻る
Power Automate DesktopWeb

Webサイトのログインを自動化する(Desktop・Edge)

Power Automate DesktopでWebサイトへログインする手順。Edge拡張機能と入力欄の準備、ID・パスワードの安全な受け渡し、ログイン成功の確認、MFAや入力できない場合の対処を具体例で説明します。

画面上の名前は、表示言語やバージョンによって異なる場合があります。Desktopの例は、フロー作成時に「Power Fx を有効にする」をオフにした標準構文です。Power Fx対応フローでは式・変数参照・インデックスの書き方が異なります。このページでは変数を %変数名% と表記します。出力変数の名前を入力する欄では、前後の % は付けません。

実行前に確認

  • 使用許可のあるテストサイトで、本人が画面を確認しながら試す例です。実際のフロー・ログインは実行検証していません。
  • パスワードをアクション・変数の既定値・CSV・ソースコードへ直書きしないでください。機密変数でも画面表示や他の変数への代入で漏れるおそれがあります。
  • MFAやCAPTCHAなどの本人確認を回避しません。ログイン失敗を繰り返すとアカウントがロックされる可能性があるため、自動再試行はしません。

1使うアクション

  1. アクション 1新しい Microsoft Edge を起動する許可されたテスト用ログインURL → %Browser%
  2. アクション 2Web ページ内のテキスト フィールドに入力するID欄 ← %LoginId%(例:demo@example.test)
  3. アクション 3Web ページ内のテキスト フィールドに入力するパスワード欄 ← %LoginPassword%(機密扱いの実行時入力)
  4. アクション 4Web ページのボタンを押すログインボタンを1回押す。自動再試行はしない
  5. アクション 5Web ページのコンテンツを待機するログイン後だけにある会員メニューを待つ。エラー時は停止
  6. アクション 6Web ページに次が含まれる場合同じ会員メニューがある場合だけ成功側へ
  7. アクション 7メッセージを表示成功側:「ログイン後の表示を確認しました」。秘密の値は表示しない
  8. アクション 8Else会員メニューを確認できない場合
  9. アクション 9フローを停止エラーで終了。後続の入力・ダウンロードは行わない
  10. アクション 10End

図で見る処理のイメージ

概念図

テスト専用のIDをID欄へ、実行時に受け取った秘密の値をパスワード欄へ渡します。成功後だけに出る会員メニューが確認できるまでは次の業務処理へ進みません。

  1. 準備

    許可されたテスト画面と4つのUI要素

  2. 入力

    ID:demo@example.test/パスワード:機密変数

  3. 送信

    ログインボタンを1回だけ押す

  4. 確認

    会員メニューを待機し、存在を再確認

  5. 結果

    確認できたら成功表示/確認できなければ停止

結果の例

成功の目印を確認できた場合だけ「ログイン後の表示を確認しました」と表示します。ボタンのクリック完了だけではログイン成功とは判定しません。

ログイン後の画面と取るべき動作(期待値・未実行)
画面の状態判断この例での動作
ログイン後だけの会員メニューがある成功を確認待機後のIfの成功側でメッセージを表示
ID・パスワードのエラー表示がある成功していない待機中なら手元で停止。繰り返し送信しない
MFA・CAPTCHAが表示された本人確認が必要手元で停止して本人が確認。無人で突破しない
読み込み中・別画面・ブラウザーを閉じた成功は未確認成功側へ進めない。エラー時は停止、確認できなければElseで停止

図と表は設計上の期待動作です。サイトによって入力欄、認証方法、成功表示は異なります。実行結果の画面ではありません。

設定と処理を説明する模式図です。実際の設定画面や実行結果のスクリーンショットではありません。

2実際の設定内容

入力する値・操作手順を確認する16ステップの設定と確認方法
  1. 1

    この例の対象:WindowsのPower Automate for desktop(PAD)を手元で起動し、Edgeで外部WebサイトのID・パスワード欄を操作します。Power Automate自体へのサインインやWindowsへのログオンを自動化する例ではありません。クラウドフローだけでWeb画面をクリックする手順でもありません。

  2. 2

    準備①:管理者やサイト運営者から自動操作が許可されたテスト環境と、その環境専用のアカウントを用意します。最初に手動でログインできることを確かめ、ログアウトしてログイン画面に戻します。ここではIDの表示例を demo@example.test、成功後にだけ出る表示を「会員メニュー」とします。架空の値なので、実在サイトへ送信しないでください。

  3. 3

    準備②:PADの[ツール]→[ブラウザー拡張機能]からMicrosoft公式のEdge拡張機能を確認し、実行するEdgeプロファイルで有効にします。会社の制限がある場合は管理者へ相談します。本例はブラウザー拡張機能方式です。Chrome・Firefoxにも対応する起動アクションと拡張機能がありますが、ブラウザーごとに準備が必要です。WebDriver方式は別設定になるため混在させません。

  4. 4

    準備③:テスト画面からWeb UI要素を4つ登録します。①ID入力欄、②パスワード入力欄、③ログインボタン、④ログイン後だけに表示される会員メニューです。UI要素とは、PADが「どの入力欄・ボタンか」を見分ける目印です。成功用の目印を登録したら、練習前に再びログアウトします。

  5. 5

    準備④:入力変数 LoginId と LoginPassword をテキスト型で作り、LoginPasswordは[機密としてマーク]を有効にします。既定値へ本物のパスワードを保存せず、練習の実行時にテスト専用の値を渡します。機密マークは表示を隠す機能で、直書きした秘密を安全な保管庫に変える機能ではありません。本番の資格情報管理は後述の公式資料「データの保護」を確認してください。

  6. 6

    新しい Microsoft Edge を起動する:[初期URL]に許可されたテストURLを指定し、新しいインスタンスを起動します。出力変数名を Browser にします。以降のWebアクションではすべて %Browser% を選び、別のタブやブラウザーを操作しないようにします。

  7. 7

    Web ページ内のテキスト フィールドに入力するを2つ配置:1つ目はID欄と %LoginId%、2つ目はパスワード欄と %LoginPassword% を指定します。欄に既存の文字がある場合は「テキストを置換」を選び、追記しません。入力値の確認にパスワードを表示するメッセージやスクリーンショットを使わないでください。

  8. 8

    Web ページのボタンを押す:登録したログインボタンを1回押します。次のWeb ページのコンテンツを待機するでは、同じ %Browser% の「次の要素を含む」を選び、成功後の会員メニューを指定します。ページが読み込み終わったことと認証の成功は別なので、ボタンを押しただけで成功にはしません。

  9. 9

    成功確認:待機の直後にWeb ページに次が含まれる場合を置き、同じ会員メニューを確認します。含む側だけ「メッセージを表示」で「ログイン後の表示を確認しました」と出します。Else側は「フローを停止」をエラー終了にし、エラーメッセージを「ログイン成功を確認できませんでした」にします。最初の練習はここまでで、業務データの更新は追加しません。

  10. 10

    失敗時の設定:入力・ボタン・待機などの[エラー発生時]はフローを停止する設定にし、「次のアクションに移動」で続行しないでください。ログインボタンの自動再試行は設定しません。待機中に認証エラー、MFA(追加の本人確認)、CAPTCHA、想定外の画面が見えたら手元で停止して確認します。この短い例には、すべてのサイトの失敗画面を自動分類する処理や待機時間の上限を測る処理はありません。

  11. 11

    確認の順番:許可されたテスト環境で正常なアカウントを1回だけ使い、会員メニューの表示と成功メッセージを確かめます。失敗系は図の下にある表の期待動作を確認し、わざと本番のパスワードを間違えて連続実行しないでください。すでにログイン済みなら、認証情報の入力が成功した証拠にならないので、テスト用セッションをログアウトしてから確認します。

  12. 12

    入力欄が見つからない場合:画面変更でUI要素の目印が古くなっていないか確認して再取得します。IDを入れた後に「次へ」でパスワード画面へ進むサイトでは、間に「次へ」の操作とパスワード欄が表示されるまでの待機が必要です。本例の同一画面に2欄ある前提のまま実行しないでください。

  13. 13

    文字は入るのに反応しない場合:入力アクションの「物理的なキー入力を使用」や入力を模倣する設定をテスト環境で確認します。物理入力はブラウザーを最前面にするため、実行中に他の作業でキーボードやマウスを操作しないでください。値が二重になる場合は「置換」と「追記」の設定を見直します。

  14. 14

    Edgeと通信できない場合:使用中のプロファイルで拡張機能が有効か、PADとブラウザーを同じWindowsユーザーで起動しているか、すべてのアクションが %Browser% を参照しているか確認します。会社のブラウザーポリシーやセキュリティ機能を勝手に解除しないでください。

  15. 15

    MFA・CAPTCHAがある場合:この例だけで無人ログインできるとは考えず、本人による認証を含めた有人運用をサイトのルールに沿って設計します。認証コードの自動取得、CAPTCHA回避、MFA無効化は扱いません。資格情報の[取得]などの管理された仕組みは別途環境の準備が必要で、機密変数だけで代替できません。

  16. 16

    利用条件とライセンス:本例は手元で開始するDesktopの練習です。クラウドからの起動、共有、無人実行では必要なライセンスやマシン接続が異なるため、組織の管理者と公式ライセンス資料で確認します。「ログインを自動化できる」ことだけで無人実行まで無料になるわけではありません。

Microsoft公式ページで確認する

設定を確認できる公式資料