とっちゃん@nyanco! です。
RPAアプリ【UiPath】で「WEBページからテキストを取得」して「外部テキストファイルに追記」する手順です。
WEBブラウザを開く
取得したいテキストがあるWEBページを開くため、アクティビティ「ブラウザーを開く」を追加して、任意のURLとプロパティからブラウザーの種類を選択。
今回は例として、URLは「ヤフーのTOPページ」、ブラウザーは「Google Chrome」としました。
ちなみに既に開いているブラウザを対象とする場合は、アクティビティ「ブラウザーにアタッチ」でOK!
取得したいテキストを選択・変数に出力
アクティビティ「テキストを取得」を追加し、下記のように「画面上で指定」でYahooトップページのトップニュースの見出しを選択します。
ケースバイケースですが、今回のセレクターの「aaname」のチェックは外しておきましょう。
なぜならこれはニュースの見出しなので、時間が経つと内容が変わってしまいセレクターとして機能しなくなるからです。
次に取得したテキストを変数に出力(格納)します。
プロパティの「出力」欄にカーソルを置き、「Ctrl」+「K」を押すと即時に出力先の変数を作成できます。
名前は任意ですが、今回は「news」としました。
ここで一旦、ちゃんとテキストを取得して、変数に格納できているかチェックしましょう。
アクティビティ「メッセージボックス」を追加して、テキスト内容に変数名「news」を入力。
確認のため実行します。
Chromeブラウザが立ち上がり、Yahooのトップページに遷移後、以下のようなメッセージが出たら成功です!
メッセージボックスはもう不要なので削除しておきます。
外部テキストファイルを用意
今回作成するワークフローと同じフォルダ内に新規テキストファイルを作成します。
ファイル名は「news」、一行目に「Yahooトップニュースです。」と入力して保存後閉じておきます。
変数の内容を外部テキストファイルに追記
UiPathのワークフローに戻り、アクティビティ「文字列を追加書き込み」を追加します。
ファイル名は、「…」ボタンから先ほど作成したテキストファイルを選択。
テキスト欄には変数名「news」と入力します。
これで完成です!
実行して「news.txt」が次のようになっていたら成功です!
おまけ:「現在日時」を一緒に追記する
テキストを追加した日時をタイムスタンプのように一緒に追記することもできます。
アクティビティ「文字列を追加書き込み」のテキスト欄を下記のように変更します。
news + " / " + DateTime.Now.ToString("yyyy/MM/dd HH:mm")
順番に説明します。
「news」:先ほどと同じく変数名。
「+」:文字列をつなげる記号。
「”/”」:文字列を見やすくするための仕切り線。なくても可だが、前後どちらかの「+」も削除すること。
「DateTime.Now」:現在日時を呼び出す命令。「now」と省略可。
「.ToString」:直前の「DateTime.Now」で呼び出した日時を「文字列」に変換するメソッド。文字列として出力するために必要。
「(“yyyy/MM/dd HH:mm”)」:日時の書式。「yyyy」は四桁で「西暦」を表すなど、詳しくは以下サイトをどうぞ。
日付と時間の書式文字列
これで再度実行して、テキストファイルの内容が下記のようになれば成功です!
ニュースの見出しの後ろに追記した時の日時が追加されて、より分かりやすくなってます。
今回のように簡易WEBスクレイピングとして使ったり、作業の途中に挟めばログを一覧で確認できるようにもなってとっても便利です!
また、テキストファイルをDropBoxなどのクラウドストレージに保存しておけば、パソコンに作業をやらせながらスマホでテキストファイルを見て進捗確認、なんてこともできます♪
ちなみに今回は既存のテキストファイルに追記としましたが、内容を上書きしたり、UiPath上で新規テキストファイルを作成したりもできます。
今回は以上となります。
最後まで読んでいただきましてありがとうございました!
それではまた〜✧٩(ˊωˋ*)و✧
コメント