【UiPathの基本】「データ入力」と「データ抽出」2018.10.18UiPathで作業の自動化を行うにあたって、データの「入力」と「抽出」はとても基本的な行為です。ここをしっかりと理解していないと、これから自動化する過程において、どのアクティビティを使用するのかが判断しづらくのでしっかり理解しておきましょう。「入力」とは英語に言い換えると、「Input」ということです。さまざまな状況下で色々なフィールドに入力することがあると思います。ログイン画面でIDとPASSを入力したり、スプレッドシートに書き込んだり、チェックボックスをチェックしたりということもInputの一つに入るでしょう。「抽出」とは、数ある中からある特定のものだけを取り出す、ということです。簡単に言えば、必要な情報をうまく取り出して扱えるようにするということです。自動化を行っていく上で、この「抽出」という行為は基本であると思います。ウェブページからURLを取り出したり、CSVファイルの中身を読み込んだり、Ui要素を探す行為もまた「抽出」の一つに入るでしょう。この「入力」と「抽出」のやり方を具体的に見ていきたいと思います。それぞれにはそれぞれのアクティビティがあり、それぞれに使い分けが必要になります。入力まずは、「入力」からです。最初にいくつかの「入力」のアクティビティを見ていきます。指定したUi要素をクリックします。プロパティによって、マウスのボタンを左、右、中央と変えることが可能です。(*既定では左に設定されています。)また、同じくプロパティによって、マウスクリックの種類を選ぶことが可能です。シングル、ダブル、アップ、ダウンへと変更可能です。(*既定ではシングルに設定されています。)これにより、ウェブページのボタンをクリックしたり、チェックボックスにチェックすることができます。指定したUi要素にキーボードのショートカットキーを送信します。キーボードのキーを送りたいときにももちろん有効です。最初にいくつかの設定は必要になりますが、これを使用することによって、アプリケーションをショートカットキーのみで開くことが可能です。面倒な、アプリケーションのパスを入力しないでよいという点を考えると非常に使いやすい方法となります。指定されたUi要素の上にカーソルを置きます(Ui要素の上でホバーします。)アイコンなどをドラッグ&ドロップするときに使用します。クリックダウン→ホバー→クリックアップの順で使用することにより操作可能です。クリックアップとクリックダウンは先ほどの「Click」アクティビティを使用します。指定したUi要素にテキストを送信します。テキストだけでなく、[Tabキー]のような特殊キーも送信可能です。このアクティビティを使うことが一番多いでしょう。注意しないといけないことが多いです。一つずつ見ていきましょう。先ほども少し説明したように、[Tabキー]や[Enterキー]、[Shiftキー]なども送信可能です。アクティビティのドロップダウンリスト(下に出てくる候補)から送信可能です。次に、前の内容を消去してから書き込む方法をお教えします。それが、EmptyFieldです。このチェックボックスをオンにすると、テキストを書き込む前にすべての要素が消去されます。何もない状態から始めることができるものです。ここからはオプションの違いを説明します。簡単に言うと、オプションの違いは三つあります。Message><Simulate>の三つです。それぞれの特徴をまとめます。<Default>デフォルトの状態のもので、文字送信の正確性は高いです。特殊キーを送信することができますが、バックグラウンドで使用することができません。Message>基本的に上のデフォルトの状態と同じですが、こちらはバックグラウンドでも使用可能です。その分、小文字しか入力できないという欠点を持ちます。<Simulate>この三つの中では一番早く動きます。特殊キーを送ることが出来なかったり、エンプティーフィールドに文章を打てないなどの欠点を持ちます。最後に、これらを表にまとめたものがありますので、よろしければご覧ください。理解して使用していきましょう。ウェブページなどから必要なデータを取り出すということです。こちらも多くの方法が存在するのですが、そのいくつかを見ていきましょう。表示しているターミナル全体からテキストを取得して文字列変数に格納します。Scraping」この方法は、指定したUi要素やPDFファイルのようなものから、データをうまく抽出するアクティビティです。その中にも三つの方法が存在します。<FullText><Native><OCR>これらはそれぞれに短所や長所がありますので、用途によって使い分ける必要があります。これらについて、特徴をまとめます。<FullText>これがデフォルトで設定されているメソッドで、基本的にこのメソッドで補うことが出来ます。スピードも速く、正確性も高いです。バックグラウンドでも使用可能で、隠れている要素なども見つけることができます。<Native>テキストやボタンの位置座標などを特定して、抽出することが可能です。<OCR>その名の通り、OCR技術を使用して、仮想環境のCitrix環境下でも使用可能です。画像として認識するため、テキストなどの位置座標を特定、抽出するすることが可能です。これらは以下のような対応関係があります。このようにそれぞれのメソッドに対応したアクティビティが存在するのです。実は、最初に説明した「GetText」はBasicRecordingに対応しているのでした。ScreenScrapingのメソッドを表にまとめたものがありますので、よろしければご覧ください。ガイドより抜粋)●「DataScraping」これを使用すると、ウェブページやアプリケーションの構造化データを抽出して、CSVファイルやExcelファイルへと書き込むことが可能です。例を挙げると、検索結果のページには、ウェブページのリンク、URLの文字列、ウェブページのタイトルなどがパターン化されていくつも並んでいます。これらの構造化データを簡単に抽出することができます。構造化したデータの抽出はとても簡単で、対応するデータを順番にクリックしていくだけです。例をお見せしましょう。これは、BingでUiPathと入力したときの検索結果です。0、「UiPath」の検索結果ここから、ページのタイトルとURLを取り出します。リボンの上にある、DataScrapingをクリックしてデータ抽出をはじめてください。次に、NEXTを押して、要素をクリックします。同様に、続けて、NEXTを押して、次の要素をクリックします。以下に進行画像をのせます。最後は、列に名前をつけたら終了です。5、列の名前付け画面このように、とても簡単に構造化したデータを抽出することができます。抽出にもたくさんの種類が存在しました。理解して使用できるようになりましょう。まとめ自動化の基本となるデータの「入力」と「抽出」を見てきました。それぞれ、いくつもの方法が存在して、それぞれに特徴がありました。それらを場合に応じて、使い分けられるようにしっかりと理解していきましょう。