Qiitaのタグランキング(記事件数・フォロワー数)を PowerBI で作ってみる

f:id:sugimomoto:20200520232426p:plain

こんにちは。CData Software Japanリードエンジニアの杉本です。

今回はプログラミングに関する知識を記録・共有するためのサービスである「Qiita」のAPIとCData API Driverを使って、PowerBIでQiitaのタグランキングを表示してみたいと思います。

f:id:sugimomoto:20200520231845p:plain

CData API Driver for ODBCとは?

今回 PowerBI と QiitaのAPIを繋ぐために、「CData API Driver for ODBC」を使用します。

CData API Driverは、あらゆるアプリケーション、データベース、SaaS にBI、ETL、アナリティクスツールからシームレスに連携を実現するユニバーサルなドライバーです。CData Drivers にビルトインのSQL エンジンによりあらゆるAPI に標準SQL でのクエリを可能にします。

f:id:kuwazzy:20200520112208p:plain

https://www.cdata.com/jp/apidriver/

API Profile をCData API Driver に読み込ませるだけでQiitaなどの事前に定義されたデータソースAPI へ連携が可能になります。

この記事では、API Driverと以下のQiita Profileを利用して、PowerBIでQiitaのデータを可視化します。

f:id:sugimomoto:20200520231853p:plain

実施手順

必要なもの

CData API Driver は前述の通り様々な事前定義ファイル(API Profile)を読み込んで、各種APIにアクセスできるようになっています。なので、今回は Qiita の API Profile をダウンロードしておきます。

CData API Driver for ODBCのインストール

以下のサイトからダウンロードし、インストーラーを実行します。

インストールが完了するとデフォルトでは「ODBCデータソース を構成する」にチェックがついているので「完了」ボタンをクリックすると下記のDSN構成画面が表示されます。一度閉じてしまったり、起動しない場合は、ODBC Administrator 64bitを起動してください。

f:id:sugimomoto:20200520231902p:plain

「CData APIs Source」に、Qiitaへの接続情報を設定します。

項目 備考
Profile APIProfileのパス 例:C:\wrk\Profiles\Qiita.apip
Profile Settings UserId={QiitaのユーザーID} 例:UserId=sugimomoto

入力後「Test Connection」ボタンをクリックして、接続に成功すれば設定完了です。「OK」ボタンをクリックして保存しましょう。

再度ODBCのDSN設定を確認する場合は、ODBC Administrator 64bitを起動してユーザーDSNの「CData APIs Source」を開くと確認することができます。

Microsoft Power BI Desktopでのデータ可視化

それでは、PowerBIからQiitaに接続してみましょう。

まず PowerBI Desktopを立ち上げて、「データを取得」をクリックします。

f:id:sugimomoto:20200520231909p:plain

データソース一覧の中からODBCを選択し

f:id:sugimomoto:20200520231915p:plain

先程構成したODBC DSNを選択します。

f:id:sugimomoto:20200520231922p:plain

ナビゲーターに移動すると、以下のように接続できるテーブルの一覧が表示されます。

今回はタグ情報を取得したいので「Tags」テーブルを選択して、「読み込み」をクリックします。

f:id:sugimomoto:20200520231926p:plain

すると、以下のようにQiita上に存在しているタグの一覧とフォロワー・記事の件数が取得できます。デフォルトでは記事の件数の上位1000件が取得されます。

f:id:sugimomoto:20200520231932p:plain

後はこのデータをPowerBIでグラフなどを構成していくだけです。

以下のように記事件数とフォロワー数のランキングを横棒グラフで表示してみました。Pythonがダントツ人気でびっくりです。(最近CData では Python Driver をリリースしたので余計)

f:id:sugimomoto:20200520231941p:plain

おわりに

今回は Connpass APIを紹介しましたが、CData APIs Driverのプロファイルは外にも数多く公開されています。

https://www.cdata.com/jp/apidriver/#profiles

f:id:sugimomoto:20200520231948p:plain

是非気になるProfileをダウンロードして、接続してみてください。

トライアル・お問い合わせ

関連コンテンツ