0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Qiita タグ一覧 Script with ChatGPT

Posted at

qiita で登録記事数が多いとタグ一覧を表示しません。タグ一覧を表示するスクリプトをご紹介ください。

ChatGPT:

Qiita は一定数以上の記事があるタグ一覧ページで自動的に省略表示されますが、
ブラウザのコンソールなどで実行する簡単なスクリプトを使えば、
隠れているタグ一覧を取得して表示することが可能です。
以下は 自分のブラウザ上だけで動作するユーザースクリプト例 です。
Qiita の公式 API を使うため、自分のアクセストークンが必要です。

  1. 事前準備
    Qiita アクセストークンを取得
    Qiita設定ページ → 「個人用アクセストークンを発行」
    スコープは read_qiita だけでOK。
    自分の Qiita ユーザー ID を確認。
  2. ブラウザコンソールで試すワンライナー
    (async () => {
    const user = "あなたのQiitaID"; // ここにQiitaユーザーID
    const token = "あなたのアクセストークン"; // ここにトークン
    let page = 1;
    let tags = [];
    while (true) {
    const res = await fetch(
    https://qiita.com/api/v2/users/${user}/following_tags?page=${page}&per_page=100,
    { headers: { Authorization: Bearer ${token} } }
    );
    const data = await res.json();
    if (!data.length) break;
    tags.push(...data.map(t => ${t.id} (${t.items_count})));
    page++;
    }
    console.log("登録タグ一覧:", tags);
    })();
    following_tags は「フォローしているタグ」を取得します。
    自分が書いた記事についたタグを一覧化したい場合は次の API を使います。
    (async () => {
    const user = "あなたのQiitaID";
    const token = "あなたのアクセストークン";
    let page = 1;
    let tagCount = {};
    while (true) {
    const res = await fetch(
    https://qiita.com/api/v2/users/${user}/items?page=${page}&per_page=100,
    { headers: { Authorization: Bearer ${token} } }
    );
    const items = await res.json();
    if (!items.length) break;
    items.forEach(item => {
    item.tags.forEach(tag => {
    tagCount[tag.name] = (tagCount[tag.name] || 0) + 1;
    });
    });
    page++;
    }
    console.table(tagCount);
    })();
  3. ユーザースクリプトとして常用する場合
    Tampermonkey などの拡張機能に以下の形で登録すると、
    Qiita のプロフィールページを開いたとき自動でタグ一覧を表示できます。
    // ==UserScript==
    // @name Qiita Tag List Viewer
    // @namespace http://tampermonkey.net/
    // @version 1.0
    // @match https://qiita.com/*
    // @grant none
    // ==/UserScript==
    (function() {
    'use strict';
    // 上記の API コードをここに貼り付ける
    })();
    ポイント
    公式 API 利用なので HTML を無理やりスクレイピングするより安定。
    アクセストークンは個人情報なので絶対に公開しないでください。
    Qiita の利用規約に反しない範囲(自分のデータ取得)でのみ使用してください。
0
1
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
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?