Qiitaからデータを取得して、何か作れたらいいなと思ったことがありました。調べてみると、Qiita公式からデータを取得する方法がいくつかあるようでしたので、まとめてみます。
Qiitaから記事やいいね数など何らかの情報を取得するには、主に2つの方法があります。「APIから取得する方法」と「RSSで取得する方法」 です。
APIから取得する方法
1つ目は、APIから取得する方法です。一番オーソドックスな方法です。
Qiita APIは公式のインターフェースで、HTTPリクエストを使用してデータを取得します。APIエンドポイントに対して適切なリクエストを送信することで、記事やユーザーの情報を取得できます。プログラムで自動的にデータを取得したい場合などに適しています。
公式ドキュメントが公開されているので、こちらを参照しましょう。
https://qiita.com/api/v2/docs
このAPIを使うと例えば、以下のようなことができます。
- 認証中のユーザーの記事一覧を取得
- ユーザー情報を取得
Qiita API使用例
- Qiita APIを使って記事一覧を取得する
https://qiita.com/koki_develop/items/57f86a1abc332ed2185d
RSSで取得する方法
2つ目は、RSSで取得する方法です。
QiitaのRSSフィードは特定のURLを購読することで取得できます。RSSリーダーなどで新着記事の情報を取得することができ、トレンドなどを追跡することに適しています。
以下のようなURLを購読することができます。
- ユーザの記事フィード
- Organizationの記事フィード
- 人気の記事のフィード
- 特定のタグの記事フィード
RSSはxml形式で記述されており、記事のタイトルやURを取得することができます。いいね数などは取得できないようです。登録したサイトのフィードを一覧にしてくれるRSSリーダーを使うと、記事タイトルなどを一覧して効率よく、記事を探すことができます。
Qiita RSS使用例
- [RSS] qiitaとzennの記事をslackに通知させる
https://zenn.dev/kenghaya/articles/6ff68c70235d49
その他
Webhookで取得する方法
Qiita teamという社内向け情報共有サービスでは、Webhookを設定することで外部のサービスと連携することができるようです。Webhookとは特定のイベントに応じて自動的にデータを送信する仕組みです。
公式ドキュメントが公開されています。
https://qiita.com/api/webhook/docs
スクレイピング(禁止)
スクレイピングとは、Webサイトから情報を抽出する技術のことです。HTMLタグを利用して特定の要素や属性にアクセスし、必要な情報を取得します。
ただ、Qiitaではスクレイピングは禁止されているので、この方法で取得するのはやめましょう。
Qiita API・スクレイピングについて
https://help.qiita.com/ja/articles/qiita-api
参考文献
Qiita KEINOS(2018)「Qiita 記事/ユーザ/Organization/タグ のフィード URL(フォローしたいユーザーやタグの XML/ATOM の URL)」,https://qiita.com/KEINOS/items/f0a5bce2fa9cfec85f8b 2024年06月25日アクセス.