【PAD】VRChatイベントカレンダーの入力を自動化する方法

VRChat
スポンサーリンク

はじめに

PADやDiscordの基礎知識などがある事を前提に進めます。
前提知識はこちらをご覧ください。

【PAD】変数の説明と使い方【外部入力,ランダム,設定方法】
変数は特定の情報を入れるための箱です。これを使う事で編集が便利+プログラム実行まで決まって無い情報を入力して使えます。Power Automate for Desktopの変数は「%******%」の%%の囲みで表示されます。こちらの使い方を解説。
【PAD】特定の要素を選択してテキストを入力する方法【改行,エラー対策,キー入力】
要素の選択系はバグりやすいので注意。エラーが出ることを想定し、処理が崩れても大丈夫作りを目指します。要素の取得は「Web」か「ウインドウ」のフォーカスを使う or「Tabキー連打」で取得可能。文字は基本「キー送信」で入れます。こちらを解説。
【PAD】サブフローの作成と実行方法【RPA,処理,分けて,書く】
Power Automate for DesktopのサブフローはMainのフロー以外に処理を書く場所です。画面左上のサブフロー → 「+新しいサブフロー」で作成できます。サブフローを実行するにはMainフローで「サブフローの実行」が必要。

入力用ページのURLを取得する

入力用ページは下記。

VRCイベント 登録フォーム
不具合・不明点についてはカッコウ(@nest_cuckoo_)まで 入力時の注意事項 ・終了時刻は開始時刻以降にしてください。 ・終了時刻24:00は入力できません。23:59とご入力ください。 -------------------------------------------- 現在、以下の機能に対応していませ...

こちらのURLをコピー。

https://docs.google.com/forms/d/e/1FAIpQLSevo0ax6ALIzllRCT7up-3KZkohD3VfG28rcOy8XMqDwRWevQ/viewform?embedded=true&pli=1

これは、VRChatイベントカレンダーページからGoogleにログインする → ログイン後表示される「入力専用」のページです。

公式HPだと、入力以外の要素が多くPADとして使いにくいです。
なので、入力専用ページのURLを開くことをおすすめします。

以上が、入力用ページのURLを取得するの解説です。

入力保存への対処法

VRChatイベントカレンダーは「Google」でログインすると作業内容が保存されます。
この「内容の保存」がPADでは逆効果になり、処理が崩れる原因になります。

そこで、下記の2つの方法で対処します。

・普段使わないブラウザーで起動する
・フォームのクリアする処理を入れる

普段使わないブラウザーで起動する

これが最も単純かつシンプルな対処法です。
普段使わないブラウザであれば、Googleにログアウトした状態でも不便になりません。

なので、下記の3つブラウザからよく使わないモノを選びます。

・FireFox
・Chrome
・Microsoft Edge

※Internet Explorerはサポート終了してるので除外

そして、選択したブラウザでGoogleからログアウト状態に設定。

そして選択したブラウザで、先ほど取得したURLを起動する処理をつくります。

【VRChatイベントカレンダー入力専用ページURL】

https://docs.google.com/forms/d/e/1FAIpQLSevo0ax6ALIzllRCT7up-3KZkohD3VfG28rcOy8XMqDwRWevQ/viewform?embedded=true&pli=1

これで、ログインしてないので入力情報が保存されません。
なので、入力保存が無効になります。

以上が1つ目の対処法です。

フォームのクリアする

2つ目の対処法はフォームをクリアする処理を入れる方法です。

これは、3つのブラウザ全て使っててGoogleからログアウトできない人向け。

VRChatのイベントカレンダーには、右下にフォームをクリアするボタンがあります。

まずWebサイトを立ち上げ。
そして、フォームクリアのボタン → 確認ボタンを押す。
最後に1度閉じて、再度webを開く。

これで、入力情報を初期化できます。
以上が、2つ目の対処法です。

1ページ目の情報を入力する

Webページを立ち上げ後、メールアドレス入力欄はTabキー3回押しで選択できます。
その後、下のイベント名ににTabキー1回で行けます。

なので、キー入力処理を追加。
キー送信先を「ウインドウのインスタンス/バンドル」に設定。
ウインドウインスタンスで、開いたWebサイトの変数を設定。
そして、テキストで{Tab}キー3回入力 → メールアドレス → {Tab}→イベント名を設定。

この状態で実行して動作を確認。

これで、メールアドレスとイベント名が入力されます。

メールアドレスは日本語表記だとエラーが出たので、aaaaの英語表記に打ち直しました。

そしたら、次はボタン入力をしていきます。

ボタン情報を入力する

下にあるボタンはTabキーで移動できます。

そして、下キー → 上キーの順番に押すと、1番上の「PCオンリー」を選択できます。

この処理をキー入力に追加。

これで、ボタン入力が完了です。

カレンダーに日付を入力する

カレンダーには、ボタン入力後、Tabキー2回で行けます。

そして、このカレンダーは数値入力が可能です。

なので、Tabキー2回 → 開催日の入力のテキストを追加。

これで、カレンダーに日付を入力する処理が完了です。

開始と終了時間を入力する

開催時刻はTabキー2回で移動できます。

そして、ここは数値入力可能です。
ただし、2つ条件があります。

・時間 → 分 への移動はTabキーを使う。
・入力はハードウェアキーとして行う

時間は15などに指定した後、Tabキーを押さないと、「分」表示の所に移動しません。

16:00と入力すると、「時間」の枠に「16:00」と入力されます。
そして「分」の所に「:00」の入力が入りません。

そして、ハードウェアキーとして入力しないと、上手くいかず文字が崩れます。

なので、キー入力を新たに追加。
ハードウェアキーとして入力を有効化。
そして、15→Tab→00のような形で入力してください。

↓このように、キー入力を分けるのがポイント。

あとは、Tabキーで移動。
Enterキーで「次へ」を選択。

これで、1ページ目の入力が完了です。

2ページ目の情報を入力する

まず、「次へ」を押した後の2ページ目への推移にはタイムラグが発生します。

そこで、Waitで「1」秒待つ処理を入れます。

そして、Tabキーと日本語入力を組みあわせて、主催者や内容説明の文章を入れます。

ここは、ハードウェアキーとして入力のチェックを外してください。

チェックボックスを選択する

そしたら次はチェックボックスのボタンを押します。
ここはTabキーで移動はできますが、Enterキーなどを押しても確定はできません。

なので、Webボタン選択を追加。

インスタンスでWebの変数を設定。
UI要素 →UI要素を追加を選択。

Ctrl+クリックで、押したしボタンを選択。

微妙にあたり所が悪いと、後で選択されないことがあるので注意。

当たり所の良し悪しは…
動かしてみると分かります。

もし動かなかった場合は、右上の所で「UI要素」を表示。
一度削除して再取得などを行って調整してください。

そして、UI要素関連は不安定です。
昨日動いても、今日は動かないという事が平気で起こります。
なので、動かなかった時のための処理を入れます。
右下の「エラー発生時」を選択。

「フロー続行を継続する」を選択。
これでもし、この部分が上手く入力できなくても、処理が止まらなくなります。

チェックボックスより下のテキストを入力する

そしたら、チェックボックス下のテキスト入力処理を作ります。

ここはTabキーで移動できますが… 将来ジャンルの枠が増えそうなので、Webの「フォーカス」を使うことにしました。

UI要素 → UI要素の追加を選択。

そして、テキスト入力欄をCtrl+クリック。
これで、入力欄を選択できます。

あとは、キーの送信 → テキスト + Tabキー移動処理を追加。

これで、チェックボックス下の全ての情報が入力できます。
送信も自動化できますが… VRChatイベントカレンダーは送信すると後で修正できません。
なので、ここは自動化せず確認してから押すのがおすすめ。

これで、PADを使ったVRChatイベントカレンダーの自動入力が完了です。

おまけ1:処理の全体像

カレンダーへの入力だけなら、下図の処理でできます。

おまけ2:サブフローや変数などを調整して使いやすくる

あとは、必要に応じてサブフローや変数を使って使いやすくしてください。

↓のような記事のノウハウを使うと、日付を変数として入れれて便利です。

【PAD】特定の日時や曜日を変数に入力する方法【日付,足し算,引き算,テキスト変換】
Power Automate for Desktopの日時情報は「変数の設定」や「現在の日時を取得」などで入力可能。日付は基本DateTimeという型で管理される。「datetimeをテキストに変換」を使うと、○○曜日のような表記に変換可能。

1つの例ですが、こんな感じに変数で入力しました。
これで、他のサイトへの入力も変数で行えて修正などに強い作りになります。

まとめ

今回は、Power Automate for DesktopでVRChatイベントカレンダーの入力を自動化する方法を紹介しました。

・PAD処理は、イベント登録専用ページを使う
・Googleアカウントにログインしてると入力が保存されてエラーが出る
・なので、Googleアカウントでログインしてない普段使わないブラウザで起動する
・フォームは基本、Tabキーで移動 → キー送信で入力可能
・日時や時間の入力だけ少し癖があるので注意
・イベントジャンルはキー入力できないので「Webボタン選択」を使う
・UI要素取得系の処理はバグりやすいので注意

また、他にもPAD関連の情報を発信してます。

【PAD】VRChatイベント告知を自動化するためのノウハウ【まとめ記事】
Power Automate for Desktop(PAD)を使ってVRChatのイベント告知を自動化する上で役立つ記事をまとめました。PADの導入から、テキストや曜日の入力などをまとめてます。ブックマークなどをしてご活用ください。
【PAD】特定の日時や曜日を変数に入力する方法【日付,足し算,引き算,テキスト変換】
Power Automate for Desktopの日時情報は「変数の設定」や「現在の日時を取得」などで入力可能。日付は基本DateTimeという型で管理される。「datetimeをテキストに変換」を使うと、○○曜日のような表記に変換可能。
【PAD】Affinity Photo2にテキストを自動入力する方法
Power Automate for DesktopでAffinity Photo2は「アプリケーション実行」で起動可能。テキストレイヤー以外をロックし「レイヤーをすべて選択」を使用後、別ツールを選択 → テキストツールを選択で文字の入力が可能になる。

ぜひ、こちらもご覧ください。

コメント

タイトルとURLをコピーしました