6
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Webスクレイピング→スプレッドシート書き出しを自動化[為替レート自動取得]

Last updated at Posted at 2025-01-27

クラウド型のRPAサービスを使用して「Webスクレイピングを行い、結果をスプレッドシートに出力する」仕組みを構築する一連の流れを紹介します

この記事で紹介している内容

クラウド型のRPAである『クラウドBOT』を使用して、以下のようなロボットを作成する手順を紹介しています。
【ロボットの処理】
1.為替レートを表示するWebページにアクセスし、為替レートをコピーします。
2.コピーした情報をGoogleスプレッドシートに追記します。
※これを1日1回自動実行します。
main_image.png

クラウドBOTとは

ブラウザ操作を自動化できる、クラウド型のRPAサービスです。
ユーザがブラウザで行っているクリックやコピーなどの操作を記録し、クラウド上で自動実行できます。
基本無料で利用でき、環境構築が不要で初期費用も発生しません。
(ISO27017を取得しており、セキュリティ面も安心です。)

事前準備

Googleスプレッドシートの用意

日別に為替レートを記録していけるように、以下のようなシートを用意しました。
1_事前準備_Googleスプレッドシート.png

サービスアカウントの発行と認証ファイルの取得

クラウドBOTからGoogleサービスを操作する際は、Google Cloudのサービスアカウントを使用します。

2_事前準備_サービスアカウントの発行.png
公式のドキュメントで、

ロボットの制作手順

クラウドBOTを使用して実際にロボットを作成していきます。

BOTエディタ画面を開く

クラウドBOTにログインし、ダッシュボード画面の「BOTを作る」ボタンをクリックします。
1_BOTを作るボタンをクリック.png

BOTエディタ画面が開きます。「仮想ブラウザを起動する」ボタンをクリックし、仮想ブラウザを起動します。
2_BOTエディタ画面が開く.png

仮想ブラウザでWebページにアクセスする

“検索またはURLを入力して下さい”の部分にスクレイピング対象(為替レートを取得するWebページ)のURLを入力し、虫眼鏡ボタンをクリックします。
3_仮想ブラウザにURLを入力.png

仮想ブラウザに対象のWebページが表示されます。
4_仮想ブラウザでWebページを表示.png

操作記録を開始する

画面左上の三本線ボタンからサイドメニューを開き、「ブラウザ操作を記録する」ボタンをクリックします。
5_操作記録を開始する.png

1番のタスクに、URLにアクセスするタスクが記録されます。
6_操作記録をが開始される.png

為替レートをコピーする操作を記録する

クラウドBOTはWebページの要素を対象に、様々な操作を記録できます。

取得する値をクリックしてメニューを表示し、「コピー」>「テキストをコピー」を選択します。
7_テキストをコピーする操作を記録する_1.png

データ名を『外貨→円貨(TTB)』と入力し、「コピーする」ボタンをクリックします。
8_テキストをコピーする操作を記録する_2.png

テキストをコピーするタスクが追加されます。
9_コピータスクが追加される.png

同じように『円貨→外貨(TTS)』をコピーするタスクを追加します。
10_TTSをコピーするタスクを追加.png

今日の日付を作成する

スプレッドシートへ書き出す際に使用する“今日の日付”を作成しておきます。
3番のタスクの下に表示されている「値を作る」ボタンをクリックします。
11_値を追加するボタンをクリック.png

値を作るウインドウが表示されます。

『値を作る』は、“生成する値”を組み合わせる事で、BOT内で様々な値を作成できる機能です。

まずは、ボタンから“年(4桁)”を選択します。
12_年を追加する.png

さらに、ボタンからをクリックし、“任意の文字列”を選択します。
/”を入力し。「OK」ボタンをクリックします。
13_任意の文字列を追加する.png

同じように、“月(0埋め)”、“任意の文字列”、“日(0埋め)”を使用して、以下のような値を作成します。

データ名は「今日の日付」とし、「OK」ボタンをクリックします。
14_今日の日付を生成.png

今日の日付を作成するタスクが追加されます。
15_今日の日付を生成するタスクが追加される.png

拡張機能Googleスプレッドシートを呼び出す

必要なデータが揃いましたので、Googleスプレッドシートにデータを書き込む操作を記録します。

クラウドBOTでは、仮想ブラウザの拡張機能を使用してGoogleスプレッドシートの操作を行いますので、その手順について解説します。

画面右上の3点リーダーから、メニューを開き、「拡張機能」をクリックします。
16_メニューから拡張機能選択.png

Googleスプレッドシート”パッケージを選択し、“データ行追加”アプリを選択します。
使用する」ボタンをクリックします。
17_スプレッドシート_データ行追加を呼び出す.png

仮想ブラウザに拡張機能が表示されます。
18_拡張機能の操作画面が表示される.png

サービスアカウントの認証ファイルを仮想ブラウザにアップロードする

拡張機能の操作を記録する前に、事前準備で作成したサービスアカウントの認証ファイルを仮想ブラウザにアップロードします。

画面左下の「ビューア」をクリックし、データビューアを開きます。
19_データビューアを開く.png

ボタンをクリックし、新しいデータを追加します。
タイプは“ファイル”を選択し、データ名は「認証ファイル」とします。
20_ファイルデータを追加.png

追加したデータ(認証ファイル)横の薄いファイルアイコンをクリックすると、ファイル選択のウインドウが表示されますので、「ファイル選択」ボタンをクリックし、ローカルから事前準備で取得したサービスアカウントの認証ファイルをアップロードします。
データビューアの「OK」ボタンを押して、データビューアを閉じます。
21_認証ファイルをアップロード.png

サービスアカウントの認証ファイルと、操作対象のスプレッドシートURLを指定する

先ほど登録した認証ファイルを参照する操作を記録します。
アップロードフォームの要素を選択し、メニューを開きます。「データを貼り付け」>「認証ファイル」を選択します。
22_ファイルを貼り付ける操作を記録.png

続いて、スプレッドシートのURLを入力します。入力フォームの要素を選択し、メニューを開きます。
入力する」を選択します。
23_URLを入力する操作を記録する.png

事前準備で作成したGoogleスプレッドシートのURLを入力し、青いチェックボタンをクリックします。
24_URLを入力する操作を記録する_2.png

次へ」ボタンをクリックする操作を記録します。
25_次へボタンをクリックする操作を記録する.png

次の入力画面に遷移します。
26_ステップ2の画面.png

ここは初期値のままで問題ありませんので、そのまま画面を下にスクロールし、「次へ」ボタンを記録する操作を記録します。
27_ステップ2の画面_次へボタンをクリック.png
次の入力画面に遷移します。

スプレッドシートに出力するデータを入力する

スプレッドシートの列名が表示されますので、BOT内で生成した「今日の日付」、Webページから取得した「外貨→円貨(TTB)」、「円貨→外貨(TTS)」をそれぞれ貼り付けます。
28_データ貼り付け.png

最後に「更新」ボタンをクリックする操作を記録します。
29_更新ボタンをクリック.png

拡張機能の実行結果が表示されます。
追加に成功したデータ行数”が「1」になっていればOKです。
30_拡張機能実行結果画面が表示される.png

スプレッドシートを確認する

実際にスプレッドシートを確認してみると、データが出力されています。
32_スプレッドシートを確認.png

BOTを保存する

BOTエディタ画面に戻り、画面右上の「保存」からBOTを保存します。
31_拡張機能実行結果画面が表示される.png

BOTのスケジュールを設定する

クラウドBOTのダッシュボード画面に戻り、サイドメニューの「トリガー」をクリックします。
トリガーを使用すると、スケジュールやメール受信を利用したBOT実行が可能です。
33_トリガーをクリック.png

トリガーの利用にはシングルオフィスプラン(3,000円/月)以上の有料プラン契約が必要です。
https://www.c-bot.pro/ja/plan/

今回は1日1回自動実行させたいので、スケジュールを使用してBOTの実行設定を行います。
34_スケジュール設定.png
これで、毎日13:00に為替レートを自動スクレイピングし、スプレッドシートに書き出す仕組みが完成しました。

さいごに

クラウド型のRPA『クラウドBOT』を使用して、1日1回「Webページから為替レートを取得し、スプレッドシートに書き出す」という自動化を構築してみました。クラウド型のRPAは全てクラウド上で処理されるので、ローカルPCでスクレイピングソフトを動作させるより利便性が高いです。
慣れてくると、このくらいの自動化であれば数十分で構築できるようになります。
本記事のスケジュール設定部分以外は無料で構築できますので、是非チャレンジしてみて下さい!

6
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?