
~ずんだもんをUiPathで自動化してみた!~【第48週】プログラミング未経験者が独学成果物で「1千イイね」とれるまでリアルタイム実況
■”ずんだもん”ってなに?

最近、Youtubeの動画でよく見かけるなあと思ってました。
元々は東北ずん子という震災復興キャラクターの専用武器に変身できる妖精ポジションだったようですが、人間体になれることになった上に、「VOICEVOX」という”無料で使える中品質なテキスト読み上げソフトウェア”に採用されたことで、とても虐げられる有能なボイスロイドとして現在活動の幅を広げている変態キャラクターのようです。
■VOICEVOXの使い方
使い方は公式にもありますし、そもそも無料ですから、興味がある方はどんどん使ってみましょう!
簡単に説明すると、
①キャラクターが複数いるので選択
②話し方もノーマル・セクシーなど複数あるので選択
③しゃべらせたい文章を入力
④勝手に単語や接続詞を認識してアクセント付きでしゃべる!
※アクセント、イントネーションなどを細かく調整すれば、より自然な話し方にできる
入力(調整してもしなくても)したボイスデータは簡単に出力することが出来ます。
これはすごいねえ(´・ω・`)
年々、無料・低コストで使えるテクノロジーが増えて、日々楽しい学びがあります(੭ु´・ω・`)੭ु⁾⁾
(自分が活用するシーンまで持ってけてないのが難点ですが…)
■RPAで動かそう!
提供されてるソフトウェアの状態でも十分使えます。
ただ、特別きれいな音声にしたいわけではなく、大量に話してもらいたいときに、いちいち入力フォームに打ち込んだり文章をコピペするのは大変ですよね。
あれ、これ自動化できるんじゃないの?
UiPathでクリック等のアクティビティでセレクターが機能するか確認…
問題ない!いけるぞ!
ということでやってみました!
UiPathでずんだもん操作してみた(´・ω・`)#UiPath#VOICEVOX#ずんだもん#自動化 pic.twitter.com/GsvFdX9s2m
— ちゃかやん (@syakasyakatan) September 16, 2022
— ちゃかやん (@syakasyakatan) September 16, 2022

1.初期設定
まずは、Excelで読ませたい文章を用意しておきます。

今回はA列の1~5行目に文章を入力しています。
これを行ごとにファイル生成します。

初期設定シーケンスで前述した原稿を読み込んでデータテーブルにしておきます。

複数代入を使っていますが、これは結果として使用しませんでした。何をしたかったかと言うと、保存する際のフォルダ階層指定を配列の繰返し処理で行おうとしたのです。しかし、変数を使用したセレクターが上手く保存できず、完璧さよりも稼働することを優先したため、今回はそれぞれのフォルダを直接指定する形にしました。
2.VOICEVOX
初期設定で用意したデータテーブルの行数で繰り返し作業をしていきます。
まずは前半部。
今回はVOICEVOXを起動し、ずんだもんを表示した状態を前提としています。


代入を使ってString型の変数に、"現在の行"の(0)列目(0から始まるので今回はA列ということ)の値を、”.Tostring”でString型として格納します。
「アプリケーション/ブラウザーを使用」アクティビティで、使用するアプリケーションをVOICEVOXに指定します。
VOICEVOXの入力フォームに対し、変数に格納した文章を入力させます。その際、繰返しを考慮して入力フォームの初期化をしたいので、フィールド内の削除を設定しておきます。
次に書き出しボタンをクリックさせます。
続いて後半部。


ファイル保存する際に出てくるポップアップを操作します。
「アプリケーション/ブラウザーを使用」アクティビティで、使用するアプリケーションを保存ポップアップに指定します。
後は、必要な階層分クリックアクティビティをさせるだけ!
(ホントはここで、何個もアクティビティを入れるのではなく、配列化した階層を繰返しさせる構造にしたかったのです…)
■UiPath モダンデザイン
まだ、職場の更新をしていなかったので、プライベートでモダンデザインを初体験する羽目になった…
かなり使用感が違って困惑(´・ω・`)
変数セレクターもなぜ機能しなかったのか…設定したつもりなのに保存しようとするとエラーになる…
まだ、モダンデザインの解説記事は少なそうなので、仕事でも難儀しそうだなあ。
UiPathは誰でも使えますから、みなさんもレッツRPA!
※詳しい使用条件や有料指定は公式をチェック!
いろんな学習記録(日々の気付き)をマガジンにしてます