OrchestratorへPUBLISHしたロボットをダウンロードしてみる②

## 皆もすなるQiitaといふものを、儂もしてみむとてするなり。

と言う訳で、こん＊＊は！はなっち！です。

- - - 
## 【序章】
[OrchestratorへPUBLISHしたロボットをダウンロードしてみる①](https://qiita.com/HANACCHI/items/3e21df26b2eae3abd6f7)で、ロボットをパッケージ名_バーション.nupkg形式ファイルで楽にダウンロード出来るお話をしました。その時に必要な情報を揃えれば、実に簡単にダウンロード用のロボも出来ますね。

さて、
##### その時に必要な情報をそろえれば
と言う作業。どのようにすれば、楽に、正確に揃えられるでしょうか？

- - - 
## 【本題】
UiPath Orchestratorから必要な情報を持ってくれば、データスクレイプすれば！と思うのですが、UiPath Orchestratorから、なかなか綺麗にデータが取れない！困っちゃう！

って方には朗報です！！Swaggerって仕組みを活用していきましょう！

### Swagger...
Swaggerで検索掛けると、色んなサイトが結果表示されます。「Swaggerの意味・解説」だと、『いばって歩く、ほらを吹く、自慢する』と言う意味だそう。知らなかった。φ(..)メモメモ

このQIITAの中では、UiPath Orchestratorが持つ機能を、Swagger経由で実行し、結果を得るものとして捉えていきます。


Swagger経由でのアクセスは、
`https://OCのURL.jp/swagger/index.html`
とする事で、アクセス出来ます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669015/639161a7-6eed-a038-73aa-abc23bbdeb5c.png)

UiPath Orchestratorから得られる情報は多岐にわたり、それぞれにメニューがありますが、ここでは”Processes”と言うのを選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669015/a2156727-0584-9652-b62e-1ec56ff7e85e.png)
”Processes”と言うのを選択しますと、コマンドメニューが現れます。
その中から、「GET」を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669015/fc3040e9-7c7d-e6e4-d8f2-730fa63279fd.png)
「GET」を選択すると、パラメタが入力できる画面になりました。
各条件を入れる事が出来るのですが、ここでは何も入力せずに、「Try it out」ボタンをクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669015/670bbf7a-f1c9-50b0-63ed-fc5ef91e49dd.png)
すると「Try it out」ボタンは「Cancel」に変更します。![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669015/e4999f96-e2d9-6a18-82b8-c9dec6a1b974.png)
この状態で、下の方にスクロールすると、幅広の「Execute」ボタンが見えてきますので、それをクリックしますと、「GET」処理が始まります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669015/20fee0b0-c976-65d1-5e87-fba5b1be153c.png)
暫くした後、結果が得られます！
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669015/076852ea-98cb-c428-4521-6957d38efa54.png)
この結果画面を下方にスクロールすると、灰色の「Download」ボタンが見えるので、それをクリックすると、自動的にダウンロードされます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669015/fbc207ee-4179-3cbe-c887-a64ebc869382.png)

### json...
さて、ダウンロードしたファイルを見てみましょう！
ダウンロード先のフォルダに、以下のようなファイルがあると思います。

`response_9999999999999.json`

これが全てのプロセスに関する情報が詰まったファイルです。テキストエデイタなどで開いてみると下の図のようなモノが見えますね。このような文字列はjsonファイル形式と言います。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669015/245bf48e-29b4-95af-9246-c7dd0c3797a0.png)
今回はOrchestratorへPUBLISHしたロボットをダウンロードに必要な情報を楽に、正確に得るかのお話ですので、jsonファイル形式の事は別の機会にしましょう。

OrchestratorへPUBLISHしたロボットをダウンロードに必要な情報は、"パッケージ名_バージョン"ですので、それに使えそうな情報を探しますと、**”Key"と書かれてある行**にあることが分かりますね？

そうです。この **”Key"と書かれてある行**のコロン以降の文字列を利用すればいいのです。
例えば、テキストエディタにある（かな？）GREP機能を使ってもいいでしょう。それをロボットをダウンロードするロボの入力として使っていくのです。

因みにEXCEL-VBAの使い手である私は、jsonファイル形式をEXCELシートに展開する、簡単なツールを作ってます。その結果を、そのままロボットの入力に出来るように、ロボットも組み上げています(^^♪

* 因みに、お客様環境ですので、色々隠してます
* バージョンは、2020.10のオンプレです。
* 他環境ではどうなるか、検証はしていません


- - - 
## おわりに
いかがでした？

色んな方法でデータは取得できます。でも、取得する手間と、鮮度を考えると、やはり提供されている機能を使って入手した方がいいですね。
入手しただけではダメで、入手した情報がどのような形になっているか、それをどうすればいいか。これらを考えるのも効率化のための **楽しみ**ですね。是非ご自身でやってみて、みてみて、どうするか、考えていってください。

今回も読んでいただきありがとうございました！
是非UiPathでのロボ開発の一助になればと思っています。

ありがとうございました！