---
title: 【Sisense Connector】Google Sheetsコネクタを使ってCOVID-19のデータを取得してみる
description: SIGNATE社がGoogle Sheetsで公開しているCOVID-19の感染者データは毎日更新されており、データサイエンスのコンペティションで利用されています。今回はGoogle APIコンソールでOAuth2.0の接続設定を行い、Sisense純正のコネクタを使用して取り込んでみます。
---

[Sisenseナレッジ - INSIGHT LAB](https://knowledge.insight-lab.co.jp/sisense)

# [【Sisense Connector】Google Sheetsコネクタを使ってCOVID-19のデータを取得してみる](https://knowledge.insight-lab.co.jp/sisense/data-modeling/connector/google-sheets-covid19)

 作成者: [Turtle](https://knowledge.insight-lab.co.jp/sisense/author/turtle)｜2020年10月16日

シャローム！Sato-Gです。  
新型コロナの自粛期間の間、自粛させていただいた"Sisense-Knowledge"の投稿もついに再開←こらっ！  
新型コロナに感染して大変だったんだよ←こらっ！ウソつけ！  
言い訳は申しません！  
すみませんっ！  
既に同僚２人が２つ投稿してくれたところで、今日は私の当番なのでさっそくいきますか。。。

以前の投稿、**【[Connector】SisenseからCDataのコネクターでGoogle Sheetsに接続してみる](https://knowledge.insight-lab.co.jp/sisense/data-modeling/googlesheets)**　で紹介したCDataのGoogle SheetsコネクタでサクッとSIGNATEさんのCOVID-19のデータを取り込んでダッシュボードを作ってみようかーという企画だったんだが、いきなり繋がらなーい！  
Sisenseをバージョンアップしたせいかな？と思ったんだけど、CDataさんにログを送って回答が返ってくるまでの間に、Sisense純正コネクタでやっちゃおう！  
ところが結構ハマったので遅くなっちゃったんだけどさ。

## 1.Google APIコンソールの設定

Google Sheetsに接続するにはOAuthで接続することになるので、Google APIの設定が必要になる。  
これはSisense側ではできなくて、Google APIのコンソールで設定しなきゃいけない。

### 1.1 新しいプロジェクトを登録する

**[Google APIのコンソール](https://console.developers.google.com/)**  
に接続すると、以下の画面になる。  
「My First Project」をクリックして、\[**新しいプロジェクト**\]を選択して、新規のAPI設定を行う。

<https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/01_new_prj-2.png>

新しいプロジェクトでは、プロジェクト名に"Sisense"を入力し（わかりやすい名前ならなんでもいい）、\[**作成**\]ボタンをクリックする。

<https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/02_prj_name-2.png>

以下のように"Sisense"というプロジェクトが登録されたのがわかる。今回作成したプロジェクト"Sisense"を選択して設定を進める。

<https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/03_select_prj-2.png>

### 1.2 APIの追加

APIとサービスの画面が表示されるので、ここで使用するAPIを追加していく。  
ここでは「**+APIとサービスの有効化**」をクリックして、APIライブラリを表示する。

<https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/04_api-2.png>

APIライブラリの一覧が表示される。Google Sheetsに接続するには３つのAPIを追加する必要がある。まずはスクロールして（ここでは検索もできる）「**Google Drive API**」を選択する。

<https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/05_drive-2.png>

Google Drive APIが表示されるので、ここで\[**有効にする**\]をクリックする。

<https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/06_activate-2.png>

以上でGoogle Drive APIが追加されたので、同様に以下の２つのAPIも追加する。  
**・Cloud Storage**  
**・Google Sheets API**

<https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/07_storage-2.png>  
<https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/08_sheets-2.png>

以上で必要となるAPIの追加は完了だ。

### 1.3 認証設定

次は認証設定だ。  
左ペインの「**認証情報**」を選択し、以下の画面が表示されたら、\[**同意画面を構成**\]をクリックする。

<https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/09_cred-2.png>

OAuth同意画面が表示される。  
ここでは「**外部**」を選択し、\[**作成**\]をクリックする。

<https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/10_oauth-2.png>

ここで同意画面は以下の表示になるので、以下のように設定する。  
・**アプリケーションの種類**  
- 内部  
・**アプリケーション名**  
- "Sisense"  
・**承認済みドメイン**  
- Sisense Serverのドメイン名を設定する。  
※ドメインである必要があるため、この方法はIPアドレスでの設定は不可のようだ。  
httpsの場合は"https://ドメイン名"にしておく。  
・**\[保存\]ボタンをクリックする**。

<https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/11_oauth_app-2.png>  
<https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/12_oauth_domain-2.png>

以上でOAuthの同意設定が完了したのでさらに認証情報を登録していく。

### 1.4 OAuthクライアントの作成

認証情報画面で「**+認証情報を作成**」をクリックし、ドロップダウンリストの中から「**OAuthクライアントID**」を選択する。

<https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/13_oauth_client-2.png>

OAuthクライアントIDの設定画面では以下のように設定する。  
・**アプリケーションの種類**  
- ウェブアプリケーション  
・**名前**  
- Sisense  
・**承認済みのJavaScript生成元**  
- URI Sisense serverのURL　例) http://hoge.com:8081  
・**承認済みのリダイレクトURI**  
http://APP\_URL/oauth/R29vZ2xlIFNwcmVhZHNoZWV0cw==/callback  
APP\_URLは承認済みのJavaScript生成元で設定したドメイン（ポートも）を指定する。  
例)http://hoge.com:8081/oauth/R29vZ2xlIFNwcmVhZHNoZWV0cw==/callback  
・**\[作成\]ボタンをクリックする**

<https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/14_webapp-2.png>  
<https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/15_oauth_uri-2.png>  
<https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/16_oauth_uri2-2.png>

以上でOAuthクライアントが作成され、以下の画面が表示される。  
ここで表示されるクライアントIDとクライアントシークレットは次の作業で必要になるのでテキストエディタでコピーしておく。

<https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/17_oauth_clientid-1-2.png>

以上で、Google APIコンソールでの設定は完了。  
以後はSisense側の設定になる

## 2.Sisenseの接続設定

### 2.1 manifest.jsonに認証情報を追加する

Sisense Serverの  
*C:\\Program Files\\Sisense\\DataConnectors\\JVMContainer\\Connectors\\Google Spreadsheets*  
にある**manifest.json**ファイルをテキストエディタで開く。

<https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/18_manifest-2.png>

oAuth2の"scope"の下に

```
"clientId": "上記のクライアントID"
"clientSecret": "上記の"クライアントシークレット"
```

の2行を追加する。

<https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/19_manifest_edit-2.png>

### 2.2 Elasticubeを作成する

新しいElastiCubeを作成し、データの追加でGoogle Sheetsを選択すると以下の画面が表示される。  
\[**Sign in with Google**\]をクリックし、Googleにログインする。  
ここでは接続するアカウントを指定する。

<https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/20_google_sheets-2.png>

ログインすると以下のダイアログが表示される。  
GoogleドライブをGoogleスプレッドシートに対する許可を確認してくるので、\[**許可**\]ボタンをクリックする。

<https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/21_connect_next-2.png>

接続が成功すると以下の画面表示になるので、\[**次へ**\]で進む。

<https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/22_google_next-2.png>

接続に利用してアカウントに共有されているGoogle Sheetsが全て表示されるので、予め表示しておいた”**SIGNATE COVID-19 Case Dataset**”を選択する。

SIGNATE COVID-19のデータは以下にて一般公開されている。  
[https://drive.google.com/drive/folders/1EcVW5JQKMB6zoyfHm8\_zLVj---t\_hccF](https://drive.google.com/drive/folders/1EcVW5JQKMB6zoyfHm8_zLVj---t_hccF)

<https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/23_covid19_dataset-2.png>

以下のようにSIGNATE COVID-19 Case Dataset内のシートが表示されるので、「**罹患者**」を選択する。

<https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/24_covid19_table-2.png>  
<https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/25_ecube-2.png>

これで、罹患者のテーブルが作成された。  
ふぅーーーっ。。。

## 3.まとめ

もう少し進めたいところなんだけど、再開早々ヘヴィな内容になってしまったので、今回はこの辺りで終了。  
ごめんなさい、面倒くさい設定で。  
CDataのコネクタは偉大だ！  
だけど、この設定はGoogle APIを使う時の標準的な設定なので、マスターしておいて損はない。

最後に、やってみて留意しなければいけない点を再確認しておくと、Google APIでOAuth設定を行う時はドメインを指定する必要があるため、Sisense Serverはドメイン環境である必要がある。  
おそらくIPアドレスでSisense Serverを構成している環境ではこの方法はうまくいかないと思う。

次回は接続したGoogle Sheetsからデータを取り込んでみる。  
ちょっとわくわく。。

ではまた！

[完全な記事を表示](https://knowledge.insight-lab.co.jp/sisense/data-modeling/connector/google-sheets-covid19)

```json
{
  "@context" : "http://schema.org",
  "@type" : "BlogPosting",
  "author" : {
    "@type" : "Person",
    "name" : "Turtle"
  },
  "dateModified" : "2020-11-18T08:02:11.972Z",
  "datePublished" : "2020-10-16T06:25:25Z",
  "headline" : "【Sisense Connector】Google Sheetsコネクタを使ってCOVID-19のデータを取得してみる",
  "image" : {
    "@type" : "ImageObject",
    "height" : 789,
    "url" : "https://download.insight-lab.co.jp/hubfs/Imported_Blog_Media/06_activate-1024x789-2.png",
    "width" : 1024
  },
  "mainEntityOfPage" : "https://knowledge.insight-lab.co.jp/sisense/data-modeling/connector/google-sheets-covid19",
  "publisher" : {
    "@type" : "Organization",
    "logo" : {
      "@type" : "ImageObject",
      "height" : 60,
      "url" : "/hs/hsstatic/content_shared_assets/static-1.4092/img/default-amp-logo.png",
      "width" : 60
    },
    "name" : "Sisenseナレッジ"
  }
}
```