[0]はじめに
Zitanです。
RPAといったらウェブスクレイピングでしょう!ということで、
Excelファイルを読み込む->ウェブサイトから情報を取得->取得した情報をExcelに書き込む
この一連の作業をUiPathで実現しました。
シンプルな動きですが、着実に身に着けていきましょう。
前回の記事もご参考にして下さい。
[1]準備
[1-1]読み込み/書き込み用のExcelファイルを用意する
デスクトップにフォルダ「Webスクレイピング」を作成して、その中にExcelファイル「WebSiteURL.xlsm」を作成しました。
中身はこんな感じ。URLを読み込んで、取得したデータがResultに書き込まれます。
[1-2]用意したExcelファイルにURLを事前に入力しておく
今回は、天気予報サイトを使います。ウェザーニュースです。
[2]全体の流れ
全体の流れは下記の図の通りです。
Excelファイルを読み込む->ウェブサイトから情報を取得->取得した情報をExcelに書き込む
[2-1]Read_Excel アプリケーションスコープ
「「範囲を読み込み」(Excelのシート内のデータを取得する)」のプロパティ
[2-2]アクティビティ「ブラウザを開く」でCromeを使ってURLにアクセスする
WebサイトのURLはExcelファイルのA2セルに入力されているので、先ほどのデータテーブル型の変数から配列番号で指定して特定のセルを取得します。
「dtExcel_Sheet_1.Rows(0).Item(0).ToString」(A2セル)
「文字を入力_地域を入力」のプロパティ
今回は北海道というテキストを入力します。Webサイト内の操作というスコープがありますが、これは元々シーケンスという表示名でした。
アクティビティを「CromeでURLにアクセスする」スコープ内に追加すると、自動的に囲まれます。
アクティビティ「クリック」(検索ボタンをクリック)のプロパティ
検索ボタンをクリックするには、要素を指定する必要があるので、セレクターの編集をします。
ブラウザを閉じると、「検証」ボタンが赤色のエラーになりますが、このままで大丈夫です。
検索ボタンをクリックすると次のページに遷移します。
赤枠で囲った「北海道の天気予報」という文字列を取得してString型の変数「WebSiteGetText」に格納します。
取得した文字列は、プロパティの「出力」に入力します。
[2-3]Write_Excel アプリケーションスコープ
先ほど出力したString型の変数「WebSiteGetText」をアクティビティ「セルに書き込み」の入力値にセットします。
書き込む先は、先ほど読み込んだ時のExcelファイルのSheet1のB2セルです。
[3]結果
デバッグから実行すると、B2セルに「北海道の天気予報」が書き込まれています。
Excel アプリケーションスコープのプロパティで「変更を保存」にチェックを入れているので毎回上書き保存されます。
[4]まとめ
いかがでしょうか。
この動作を応用してループ処理すれば、まさにRPAで実現したいことに近づくのではないでしょうか。