クラウドBOTで「ログインが必要なサイトのスクリーンショット」を自動撮影してみる

C-RISEの村井です。
今年のアドベントカレンダーは「NoCode & LowCode」にエントリーしました。
[昨年の記事](https://qiita.com/cr_murai/items/d236b1f40d480143a675)を振り返ってみると偶然にも同日の12月21日でした。
しかも昨年も当日に記事を書いているという有様で、１年経っても成長してないなと実感している所です。

しかし、私とは違い[クラウドBOT](https://www.c-bot.pro/)はこの一年で色々と成長しました。
アップデートを繰り返し機能も様々増えてきました。
本記事ではとても紹介しきれないので今回はその中の一つ「スクリーンショット機能」を紹介したいと思います。

## スクリーンショットを撮る
Webサイトのスクリーンショットを撮影して画像化するサービスやアプリは色々公開されていると思います。
* [FireShot](https://chrome.google.com/webstore/detail/take-webpage-screenshots/mcbpblocgmgfnpjjppndjkmgjaogfceg?hl=ja) Webブラウザのスクリーンショットを撮るプラグイン
* [SITE-SHOT](https://www.site-shot.com/) Webサイトのスクリーンショットを撮るサービス
* [Gyazo](https://gyazo.com/ja) スクリーンショットを録画してアップロード・共有ができるサービス

しかし、パソコン上で開いてるブラウザのスクリーンショットを撮ったり、URLを指定するとスクリーンショット画像を生成するといったサービスがほとんどです。
せっかくなら、これらサービスでは対応できない事に挑戦してみようと思います。
**クラウド型RPA**である[クラウドBOT](https://www.c-bot.pro/)の強みを活かし、**ログインが必要な非公開ページのスクリーンショットを撮影**してみます。

## 完成イメージ
ますは、先に完成したBOTの実行イメージを動画(22秒)で確認してみましょう。
<iframe width="560" height="315" src="https://www.youtube.com/embed/tw0Nd7wYdlE?si=-hZ7wjCnWU-qjdzz" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>

1. freeeへログイン
2. レポート画面へ遷移しグラフのスクリーンショットを撮る(画像ファイル取得)
3. kintoneのファイル管理アプリへログイン
4. ファイル管理アプリへスクリーンショット画像を登録

というとてもシンプルな操作です。

## 自動操作のシナリオ
実際の操作シナリオの画面遷移を追ってみましょう。

**freeeにログイン**
今回はログイン対象のサイトとしてfreeeにアクセスします。
![BOT01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/63595/85f4b3b2-a167-1f92-1d27-9de8562982d8.png)

**レポート画面で必要な条件を入力**
撮影したいレポートを表示する為、必要な条件を入力します。
![BOT02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/63595/9c763906-b3c7-7d7a-8c63-df046fc34df4.png)

**グラフを表示**
収益推移の折れ線グラフが表示されました。
![BOT03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/63595/99d1f4c0-46fa-d83a-1e34-1c64f46604e8.png)

**スクリーンショット撮影**
撮影したいグラフの範囲を選択しスクリーンショットを撮影します。
撮影した画像をファイルとして取得する事ができます。
![BOT04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/63595/949d5bb7-dfb1-054d-2083-3ad9af02f51d.png)

**kintoneにログイン**
撮影した画像ファイルを保管する為、kintoneのファイル管理アプリにログインします。
![BOT05.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/63595/a928979b-8c72-135f-944f-4a87f4f2b0ad.png)

**ファイル登録画面を開く**
今回撮影した画像ファイルを登録する為、レコード追加ボタンをクリックします。
![BOT06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/63595/b1b90f8f-2118-b409-ea4b-11f8ea15682a.png)

**スクリーンショットの画像ファイルを登録**
画像ファイルのタイトルを入力し、画像ファイルをアップロードします。
![BOT07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/63595/06ae8c70-6764-0c60-c652-0373385d8b5a.png)

**登録完了**
画像ファイルが登録されました。
![BOT08.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/63595/7aa151aa-7063-703c-3e9a-b861f5a71a19.png)

クラウドBOTは、上記操作手順をエディタ上で自動記録する事でBOTを作成できます。
手順を一つ一つコーディングする必要が無いノーコードサービスです。
詳しい操作方法は、[チュートリアル](https://www.c-bot.pro/ja/tutorial/)に丁寧に説明してあるので興味のある方は是非ご覧下さい。

## 定期的にBOTを実行すればスクリーンショットの履歴をkintoneに保存可能
今回の操作手順はスクリーンショットを撮影して画像をkintoneに登録するだけなので手作業の方が早そうです。
しかし、この作業を毎日行う場合は、毎回手作業は以外と面倒です。
クラウドBOTなら、毎日BOT実行ボタンをポチッと押すだけでこの作業が自動で行われるのです。

:::note info
ここまでの機能は無料プランで利用可能です
:::
:::note info
有料プランを利用するとBOTを定期実行するスケジュール機能が利用できます
:::

## ノーコードで効率は上がるのか
今回自動化した作業は、手作業なら5分程でできます。
この作業をBOT化するのはおよそ15分程かかります。
つまり３回以上実行するのであれば自動化の効果が得られるという事になります。
効率化が期待できるのは、下記のようなケースです。
* 定期的に発生する作業
* 人的判断が不要な作業(手順化可能な作業)
* 大量のコピペ等、繰り返しが多い作業

## クラウド型RPAは何が嬉しいのか
実は、今回ご紹介したシナリオはクラウド型RPAである必要はなく、オンプレミス型のRPA製品でも同様に自動化できます。

では、クラウド型RPAならではのメリットは？
というと色々ありますが、最も大きな特徴は
**全てがクラウド上にある**
という事です。
それにより、手元のパソコン環境、オフィス環境に依存せず自動化が可能になります。
つまり、**クラウド上に作成したBOTはいつでも世界中から呼び出し実行可能**です。

つまり、
* このBOTを共有する事でみんなで活用できる
* このBOTをAPI呼び出しする事でシステム間連携ができる
* このBOTとクラウドサービスをつなぐ、サービス間連携ができる

という事が言えます。

## 最後に
クラウドBOTはまだまだ開発が続いています。
ちょっと機能が足りないなと思ったら、半年後には対応しているかもしれません。
要望があれば、優先的に実装するかも知れません。
全く新しい機能が実装されるかも知れません。
他には無い独自のサービスとして成長させていきますので、ぜひ応援よろしくお願いします。

最後になりましたが、メリークリスマス！良いお年をお迎え下さい。