UiPathでWEB収集ロボットを作るための開発ロードマップとは

下記のステップでUiPathによるWEB情報収集ロボットを作れるようになりましょう。

  • UiPath学習本(無料)による入門学習
  • WEB情報収集に必要なActivityの学習
  • 弊社モデルのロボットのソース理解と改造​

UiPath全般の学習というよりは、弊社モデルをベースにしたWEB収集ロボット開発技術に特化したロードマップです。

尚、Uipath全般を学びたい方は、UiPathが無償のAcademyを提供してます。

https://academy.uipath.com/

こんなロボットを作ることができるようになります。

設定編

UiPathの書籍PDFを元に、開発環境を整備します。

No.000 ロードマップの全体説明(読んだら完了です)

【目的地】
このロードマップの目的地は「UiPathでWEB情報収集ロボットを作れるようになる」です。
【ステップ】
設定編 UiPathの公式書籍PDFを元に、開発環境を整備します。
ロボットの基本編 公式書籍PDFでUiPathの基本を学びます。
個別アクティビティ編 WEB収集ロボットを作るために必要な最小限のアクティビティについて学びます。
ロボットの実務編 実際に弊社が作ったWEB収集ロボットを理解し、修正し、転用して新たなロボットを作ります。
ここまでのステップを経れば、弊社基本モデルをベースにした、WEB収集ロボットを作れるようになっているはずです

No.100 できるUiPath(PDF書籍)のダウンロード(公式サイト)

下記URLから、できるUiPathの書籍をダウンロードしてください。

https://www.uipath.com/ja/notice/dekiru

No.110 できるUiPath(1) RPAとは

「できるUiPath」参照

No.120 できるUiPath(2) UiPathを始めよう

​「できるUiPath」参照

<注意点>ダウンロードするのは、Communityエディション です。

No.130 できるUiPath(3) UiPath Studioの画面を確認しよう

「できるUiPath」参照

ロボットの基本編 

公式書籍PDFでUiPathの基本を学びます。

No.200 できるUiPath(4) ワークフローを作るには

​「できるUiPath」参照

No.210 できるUiPath(5) 操作をレコーディングしてワークフローを作るには

「できるUiPath」参照

No.220 できるUiPath(6) レコーディングした操作を実行するには

​「できるUiPath」参照

No.230 できるUiPath(7) レコーディングした操作を編集するには

「できるUiPath」参照

No.240 できるUiPath(8) 経費入力業務を分析し、自動化してみよう

​「できるUiPath」参照

No.250 できるUiPath(9) ExcelとWebアプリを自動処理するには 1 

「できるUiPath」参照

No.260 できるUiPath(10) ExcelとWebアプリを自動処理するには 2

​「できるUiPath」参照

No.270 できるUiPath(11) Webページの表をメールで送信するには

「できるUiPath」参照

個別アクティビティ編

UiPathにはたくさんのアクティビティがあります。

ここでは、弊社モデルをベースにしたWEB情報収集ロボットを構築するために必要なアクティビティに絞って学習します。​

No.300 コメント アクティビティ(Comment)

コメントを入れてみてください。コメントをいれておくことで、後から見直したときに、わかりやすくなります。


No.310 代入 アクティビティ(Assign)

下記のながれを実現してみてください。
1)変数を定義(文字列型)
2)その変数に"こんにちは"を代入
3)メッセージで表示
Image109
Image109
Image109

No.320 Excel アプリケーションスコープ->範囲を読み込む

既にこの2つのアクティビティは使用経験があるはずです。
自分で適当なExcelファイルを準備して、
1)Excel アプリケーションスコープ Excel Application Scope
2)範囲を読み込む Read Range
この2つのアクティビティの使い方の復習をしてください。

No.330 データテーブルを構築->データ行を追加

1)データテーブルを構築(Build data table)
  データテーブルの名前 pvdt_Test
  第一列 コード string型
  第二列 名前  string型
2)データ行を追加 を使って、pvdt_Test に2行追加
  {"001","テスト1"}
  {"002","テスト2"}
3)繰り返し (各行)(For Each Row)を使って、ちゃんと行が追加されているかを1 行を書き込み(Write Line)で確認。

​​

Image110
Image110
Image110
Image110
Image110
Image110

No.340 ディレクトリを作成

​ディレクトリを作成(Create Directory)を使用して、適当な場所にディレクトリ(フォルダ)を作成してください。

Image111
Image111
Image111

No.350 ブラウザーを開く→ウィンドウを最大化

​ブラウザを開く(Open Browser)の中に、ウィンドウを最大化(Maximize Window)を配置して、ブラウザを開いた後に最大化してください。

Image112

No.360 スイッチを使用した処理分岐

​入力ダイアログ(input dialog)で数字を入力して、その数字をもとに、スイッチ(Switch)で処理分岐をしてください。

Image113
Image113
Image113
Image113

No.370 Word Application Scope -> Append Text

Word Application Scope と Append Text を使って、ワードファイルに文字列を書き込んで下さい。

成功すると、ワードファイルに文字が書かれます。

Image114
Image114

ロボットの実務編

​実際に弊社が作ったWEB収集ロボットを理解し、修正し、転用して新たなロボットを作ります。

No.500 実際のWEB収集ロボットを動かしてみる。

弊社で実際に作成したWEB収集ロボットです。
 30_WEB_Research.zip ロボットのソース。Main.xamlを開けばOK.
 uipath-web-ini.xlsx 初期設定ファイル D:\90.WebResearchに設置
 uipath-web-調査定義.xlsx D:\90.WebResearchに設置
 WEB調査ロボット概要仕様.xlsx ロボットの概要説明
まずは、このロボットを動かしてみてください。
きちんとWEB情報が収集されて、エクセル・ワードに転記されれば成功です。


教材ファイルは下記URLよりダウンロード可能です。

中国のクラウドサービス 百度网盘 からのダウンロードです。

https://pan.baidu.com/s/1RJ_4vvloEdqBrkdraGWUtw



ダウンロード用のパスワードは私のツイッターアカウントまでDMでお問い合わせください。

(返事遅れたらごめんなさい)

https://twitter.com/kai0707

No.510 WEB収集ロボットのソースをなんとなく理解

ソースを一通りざっと眺めて、どこで何をしているのか、流れを確認してみてください。
1)どこでiniファイルを読み込んでいるか。
2)どこでブラウザを開いているか
3)どこで結果をワードに書き込んでいるか
4)どこで結果をエクセルに書き込んでいるか。
こんな感じで大体の場所が把握できればOKです。

No.520 WEB収集対象URLを増やしてみましょう

WEB収集対象URLを増やしてみましょう。
ロボットソースを修正する必要はありません。設定ファイルを変更するだけで実現可能です。
1)https://qiita.com/ を開く
2)何か好きなキーワードで検索する
3)そのURLを、 uipath-web-調査定義.xlsx に追記する
4)ロボットを動かして、期待通りの結果がでているか確認してください。
注意点
S_Number はユニークな番号をいれてください(他と重複しないという意味)
S_解析TYPEは100でOK

No.530 収集結果エクセルに項目を追加

収集結果に、収集日時を追加してみましょう。
【調整対象】
WEB-RPA運行結果一覧.xlsx
【出力項目調整】
現在:大区分,小区分,連番,标题,文件名,链接中文,URL,備考
修正後:大区分,小区分,連番,标题,文件名,链接中文,URL,備考、収集日時
【手順】
1.データテーブルを構築(Build data table)で、gvdt_ResultReportDetailを定義している場所を探してください。
  UiPath Studioの右上に、検索欄があるので、そこで探すと探しやすいです。
2.収集日時の列を追加
3.この状態で一度ロボットを動かしてみてください。中身は空ですが、出力結果エクセルに項目は追加されているはずです。
4.次に実際の収集日時をいれるため、gvdt_ResultReportDetailにデータを追加している場所を探してください。
  データ行を追加(Add Data Row)で処理されているはずです。
5.変数を新たに定義 pvs_収集日時 String 型
6.代入(Assign)を使って、収集日時を pvs_収集日時に代入
7.データ行を追加(Add Data Row)のArrayRowプロパティを調整
  修正前

  {row("S_大区分").ToString,row("S_Name").ToString,pvi_SubRecordCount.ToString,rowWeb(0).ToString,pvs_ResultFileName,pvs_ResultFileLink,pvs_UnitGetURL,pvs_ReportRemark}

  修正後 一番最後に、対象日時の変数が追加されています。
  {row("S_大区分").ToString,row("S_Name").ToString,pvi_SubRecordCount.ToString,rowWeb(0).ToString,pvs_ResultFileName,pvs_ResultFileLink,pvs_UnitGetURL,pvs_ReportRemark,pvs_収集日時}
8.もう一度ロボットを動かすと、収集日時の欄が埋まっているはずです。


Image108
Image108
Image108
Image108
Image108
Image108
Image108
Image108

No.540 ワードに貼り付ける項目の追加

ワードに貼り付ける項目を増やします。
【追加する項目】
Qiitaの詳細ページにある最終更新日情報(添付参照)

【手順】
1.詳細ページからテキストを取得する場所を探してください。
  テキストを取得(Get Text)アクティビティで処理されています。
2.代入用に変数を新たに定義
  pvs_LastUpdate string型
3.テキストを取得(Get Text)アクティビティを追加して、最終更新日部分を取得、
  pvs_LastUpdate に代入します。
4.Wordにテキストを出力している場所を探します。
   Append Text アクティビティで処理されています。
5.pvs_LastUpdate もWordに出力する様に追加します。
  Append Text アクティビティを使用します。
6.結果イメージは下記イメージ参照

Image121
Image121
Image121
Image121
Image121
Image121
Image121

No.550 別のサイトの情報を収集してみましょう

これまで作ってきたロボットをそのままコピーして、
ここの情報を収集するロボットを新たに作ってみましょう。
ロボットはフォルダ毎コピーすればOKです。基本的な流れは元のロボットと同じです。
ポイント1:uipath-web-ini とは別のファイルを参照する様にしましょう。
ポイント2:uipath-web-調査定義-2.xlsx とは別のファイルを参照する様にしましょう。
ポイント3:データスクレイピングの場所を修正しましょう。
ポイント4:詳細ページのURLを定義する場所を修正しましょう。
ポイント5:詳細ページのコンテンツを取得する場所を修正しましょう。
上記の場所を修正して、上手く動けば成功です!

Image122

お疲れさまでした!

​ここまでたどり着いたかた。是非お仕事お願いしたいです!

ご意見、ご感想等、私のツイッターアカウントまで頂けるとすごくうれしいです!

https://twitter.com/kai0707