
今回は、「表抽出(データスクレイピング)」を行います。表抽出とは、Web上にあるテーブル構造の情報を取得する機能です。取得した情報をExcelにそのまま貼り付けられるので、そのまま情報を加工することが可能です。また、表データにリンクテキストがあれば、URLも取得することができます。
開発環境
- UiPath Studio Community Edition
- Excel 2019
事前準備
- Excelで「設定情報.xlsx」を用意します。内容は下記の通りです。なお、URLは当ブログの「サイトマップ」を使用しています。
- UiPath Studioで「空のプロジェクト」を用意します(プロジェクト名はお好みで)。
- 「設定情報.xlsx」をプロジェクトフォルダの外側に用意します。
製造
- Main.xamlを開き『フローチャート』アクティビティを配置します。
- 設定情報の読込を行います。フローチャートの中に『シーケンス』アクティビティを配置します。設定情報の読込については下記記事を参照してください。ここでは詳細を割愛します。
【UiPath】設定情報ファイルをDictionary型で取り込む | ともゆきの独り言(雑記ブログ)
業務自動化の手法としてExcelVBAだけではなくRPA(UiPath)についても備忘録として残していこうと思っています。実際の業務の処理をRPAで操作する前に、まずはRPA開発のテンプレートとも言える「設定情報ファイルの読み込み」からご紹介したいと思います。
- ここから表抽出の処理を行います。フローチャートの中に『シーケンス』アクティビティを配置します。名前を「表抽出」にします。
- 配置した表抽出シーケンスの中に『アプリケーション/ブラウザーを使用』アクティビティを配置します。
ブラウザーのURL:設定情報のキーを入力します。 - アプリケーションアクティビティの中に『表データを抽出』アクティビティを配置します。
抽出先:dt
- 表データのあるWebページを表示し、「画面上でターゲットを指定」を選択します。
- 表データの取得モードになったら表の項目をクリックします。"表からすべての列を抽出しますか?"のメッセージが表示されたら「はい」を選択します。表抽出のダイアログで取得した列の一覧が表示されます。この時、不要な情報の列は取得する必要がないので、削除しておきましょう。「保存して閉じる」で取得モードが終了します。
- 『Excelプロセススコープ』アクティビティを配置します。
- Excelプロセススコープの中に『Excelファイルを使用』アクティビティを配置します。
Excelファイル:設定情報のキーを入力します。
変更を保存:チェックを入れます。
存在しない場合ファイルを作成:チェックを入れます。 - Excelファイルを使用の中に『データテーブルをExcelに書き込み』アクティビティを配置します。
書き込む内容:dt
ターゲット:Excel.Sheet("Sheet1")
実行結果
WebページのテーブルデータがExcelに貼り付けられていることが確認できます(なお、テーブルデータの構造上、余計な一行が含まれてしまっていますが、この辺りは適宜フィルターなどを使って削除してください。)
以上。
コメントを投稿
別ページに移動します