4
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Google Apps Scriptを使用してQiita APIから記事情報を取得する方法

Posted at

Qiita APIへのアクセストークンの取得

1 Qiitaにログイン後、画面右上の自分のプロフィールアイコンをクリックし、ドロップダウンメニューから「設定」を選択します。

2 設定画面の左側にあるメニューから「アプリケーション」を選択します。

3 「新しくトークンを発行する」ボタンをクリックします。

表示されたトークンをコピーしてください。このトークンは一度しか表示されないので、紛失しないように注意してください。

4 ここで取得したトークンをスクリプトのアクセストークンの部分に置き換えてください。

スクリーンショット 2023-07-16 0.08.24.png

Google Apps Scriptプロジェクトの作成

Googleドライブにアクセスし、新しいスプレッドシートを作成します。次に、スプレッドシート内でGoogle Apps Scriptを作成します。

Qiitaデータ取得用のスクリプトの作成

function fetchQiitaData() {
  var YOUR_ACCESS_TOKEN = "自分のアクセストークンに置き換えてください";
  var apiUrl = 'https://qiita.com/api/v2/authenticated_user/items?per_page=100';
  var response = UrlFetchApp.fetch(apiUrl, {
    headers: {
      'Authorization': 'Bearer ' + YOUR_ACCESS_TOKEN
    }
  });
  var items = JSON.parse(response.getContentText());
  console.log(items);
  
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheetByName('index'); // データを出力するスプレッドシート名に合わせて変更してください
  
  var data = [];
  var header = ['タイトル', 'いいね数', 'ストック数', '閲覧数', '非公開フラグ', '作成日'];
  data.push(header);
  
  for (var i = 0; i < items.length; i++) {
    var title = items[i].title;
    var likes = items[i].likes_count;
    var stocks = items[i].stocks_count;
    var views = items[i].page_views_count;
    var private_flg = items[i].private;
    var created_at = items[i].created_at;
    var row = [title, likes, stocks, views, private_flg, created_at];
    data.push(row);
  }
  
  sheet.getRange(1, 1, data.length, data[0].length).setValues(data);
}

4
2
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
4
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?