LoginSignup
36
42

More than 1 year has passed since last update.

[Power BI Tips] Qiita の投稿記事を API でデータを取得して Power BI で可視化&分析したい

Last updated at Posted at 2020-07-18

Qiita で記事を書いている人へ

ご自身の Qiita への投稿を分析したいと思ったりしますよね?
Qiita には API があって、無償で公開されているので、これを使うといろんなツールや言語からデータを取得して、分析できます!

Qiita API v2 documentation - Qiita:Developer
https://qiita.com/api/v2/docs

これを使って Power BI Report を作成しました。
image.png
↓↓↓ レポートはこちらでご覧いただけます ↓↓↓
https://bit.ly/qiita-pbi-yugo
↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑

ただ、いちいち作るのも面倒です!っていう人もいると思います。
そんな人のために Power BI テンプレートファイル (pbit) を作成しました。

↓↓↓ ダウンロードはこちらから ↓↓↓↓↓↓↓↓↓
ZIPファイル(2020.07.19 12:10 更新)
※ 記事公開当初は 不具合 があったので修正しました
2020.07.19 12:10 より前にダウンロードした方はもう一度ダウンロードしてください
※ ダウンロードし直したら、カスタムコネクタはご自身のマシン上で上書きをしてください
pbit は開いて、pbix として名前を付けて保存してください
Power BI Service に発行している方は再度発行してください
↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑

zip をダウンロードしたらやること

【前提条件】

  • Power BI Desktop の最新版がインストールされていること(Power BI Desktop は Windows 版のみです)
  • 外部公開する場合 ⇒ Power BI Pro を保持していること

手順は以下の通りです

【ご自身のマシンで見れるようにする手順】
1. Qiita のアクセストークンを取得
2. カスタムコネクタ (Qiita.mez) を該当フォルダにコピー
3. Qiita.pbit を開いて Qiita のアクセストークンを貼り付ける

ここまででご自身のマシンの Power BI Desktop でレポートを見ることが可能です。
Power BI Service に発行して、外部に公開したい場合は、もう少し手順が必要です。

ご自身のマシンで見れるようにする手順

1. Qiita のアクセストークンを取得

https://qiita.com/settings/applications にアクセスをしてアクセストークンを取得します。
[新しくトークンを発行する] をクリック
image.png
[read_qiita] のみにチェックを入れて、発行する。発行したアクセストークンをコピーして保存しておく
image.png

2. カスタムコネクタ (Qiita.mez) を該当フォルダにコピー

冒頭でダウンロードした ZIP を任意のフォルダに解凍してください。
解凍するとこんなフォルダとファイルが見えるはずです。
image.png
Qiita.mez ファイルを C:\Users{ユーザー名}\Documents\Power BI Desktop\Custom Connectors にコピーします。
{ユーザー名} はご自身のサインインユーザー名にしてください。
image.png

3. Qiita.pbit を開いて Qiita のアクセストークンを貼り付ける

Qiita.pbit を開くと、以下の画面が出てくるので、先ほどコピーした Qiita のアクセストークンを貼り付けます。
image.png
アクセストークンを貼り付けると、データの読み込みがはじまるので、終わるまで待ってください。
データの読み込みが終わると以下の様に表示されます。
image.png
名前を付けて保存をしてください。
以降は、リボンの [更新] をクリックすることで、データを最新化することができます。
image.png

これでご自身のマシンで Power BI Desktop を使えば、いつでも最新のデータを見ることができるようになりました。

レポートを Power BI Service に発行する

ご自身のマシンで見れるようになったわけですが、せっかくなので Power BI Service に発行したくなりますよね?
ここから先は Power BI のライセンスが必要になります。既に Power BI のアカウントを持っている方が対象です。

Power BI のアカウントを取得する方法は @PowerBIxyz さんの以下の記事を参考にしてください
[Microsoft Power Platform の開発環境を準備する]
https://qiita.com/PowerBIxyz/items/6b8ebe22f677d4ad846d

【レポートを Power BI Service に発行する手順】
1. Power BI Desktop から Power BI Service へ発行する
2. オンプレミスデータゲートウェイを適当なマシンにインストールして、使えるように設定する
3. そのマシンに カスタムコネクタ (Qiita.mez) をコピーする
4. Power BI Service でカスタムコネクタを使用してオンプレミスデータゲートウェイの設定をする

1. Power BI Desktop から Power BI Service へ発行する

レポートを発行するには、リボンの [発行] ボタンをクリックします。この時 Power BI のアカウントでサインインが求められますので、サインインをしてください。
image.png

2. オンプレミスデータゲートウェイを適当なマシンにインストールして、使えるように設定する

今回のレポートはカスタムコネクタを使用しているので、オンプレミスデータゲートウェイが必須となります。

オンプレミス データ ゲートウェイをインストールする
https://docs.microsoft.com/ja-jp/data-integration/gateway/service-gateway-install

上記のページの [標準ゲートウェイをダウンロードおよびインストールする] のみ実施してください。
ご自宅で余っているマシンでも OK ですし、クラウド上の仮想マシンでも OK です。
データ更新時にそのマシンが起動している必要があります。業務で使用する場合は 24 時間 365 日稼働しているマシンにインストールするのが普通です。

3. そのマシンに カスタムコネクタ (Qiita.mez) をコピーする

公式ドキュメントの説明としては以下になります。
オンプレミス データ ゲートウェイでカスタム データ コネクタを使用する
https://docs.microsoft.com/ja-jp/power-bi/connect-data/service-gateway-custom-connectors
オンプレミスデータゲートウェイを開いて、[コネクタ] のページを開くと、フォルダパスが表示されているので、そこに Qiita.mez を保存してください。
(以下の画像ではデフォルトのフォルダパスを変更しているので、ご自身の環境に合わせてください)
image.png

4. Power BI Service でカスタムコネクタを使用してオンプレミスデータゲートウェイの設定をする

Power BI Service の画面 (https://app.powerbi.com/home) を開いて、画面右上の [歯車マーク] - [ゲートウェイの管理] をクリックします
image.png
ゲートウェイの管理画面で、オンプレミスデータゲートウェイをインストールした際に付けたゲートウェイの名称の右側の [...] - [データソースの追加] をクリックします
image.png
[データソース名] に任意の名前(画像では Qiita)、[データソースの種類]Qiita を選んでください
image.png
[アカウントキー] には Qiita のアクセストークンを入力してください。
データソースのプライバシーレベルはご自身だけ使用するのであれは [パブリック] にしています。[追加] をクリックします。
image.png
左側のメニュー [データセット] - [Qiita] の右側 [...] から [更新のスケジュール設定] を開きます
image.png
[ゲートウェイ接続] を開いて [マップ先]Qiita を選択し、[適用] をクリックします。
image.png
[スケジュールされている更新] を開いて、データ更新がしたい時刻を指定します。Power BI Pro の場合、最大 8 回/日です。
image.png
忘れずに [適用] をクリックしてください。

これでご自身の環境で指定した時刻にデータが更新されるようになりました。

外部に公開する場合

ここまでで、ご自身のアカウントでご自身のテナントにおいて、レポートが参照できるようになりました。
同一テナントの別ユーザーがレポートを見れるようにするには、以下の共有ボタンから共有するユーザーを指定すれば可能です
image.png

もし、私が冒頭でお見せした通り、広くインターネットに外部公開するのであれば、以下の手順を実行してください。
(以下の手順は Power BI の全体管理者か Microsoft 365 の全体管理者のみ設定することができます)
画面右上の歯車マークから [管理ポータル] をクリック
image.png
[テナント設定] - [Web に公開] を開いて、有効化 されていることと [既存のコードと新しいコードを許可する] にチェックが入ってることを確認してください。
そうなっていない場合は、設定し、適用してください。
image.png
レポートに戻って、[...] - [埋め込む] - [Web に公開 (パブリック)] をクリックします
image.png
URL で共有する場合は1、Web サイトに埋め込む場合は2をコピーしてください。
image.png

これでインターネット公開が可能となります。

まとめ

いかがでしたでしょうか?
全部設定するとちょっと手順が長いですが、ご自身のマシンで見れるようにするだけなら、簡単です。

今回の内容は、業務でも十分に応用が利く内容です。標準のコネクタで対応できない場合、カスタムコネクタを作成して、今回の方法でカスタムコネクタを組織内で共有すれば、受け取ったユーザーは複雑な Power Query を記載することなく、簡単に欲しいデータを取得することができます。

カスタムコネクタの開発について知りたい方は Kenichiro Nakamura さん(@kenakamu) の以下の記事を参考にしてください

Power BI カスタムコネクター開発 : いつも使っている Power Query をパッケージする
https://qiita.com/kenakamu/items/c32b46c985040a703a8c

また今回作成した Qiita のカスタムコネクタは、同じく Kenichiro Nakamura さん(@kenakamu) の以下の記事の方法をほぼそのまま使わせてもらいました。
Power BI Desktop で Qiita の記事を解析してみる
https://qiita.com/kenakamu/items/1274a71fcb5648d186a0

ぜひ、いろいろと工夫&応用してみてください!!
楽しいものが作れたら、教えてくださいネ😁

最後まで読んでいただきありがとうございました。また気が向いたら、Power BI Tips シリーズ書きます。
皆様からのリクエスト、お待ちしております。

何かリクエストがあれば、以下までー🤗
Twitter: https://twitter.com/yugoes1021
Facebook: https://www.facebook.com/yugoes1021
LinkedIn: https://www.linkedin.com/in/yugoes1021/

36
42
6

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
36
42