0
0

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 Web API①】Pythonを使ってQiita APIの記事情報を取得してみた!

Posted at

はじめに

Qiita APIを使うことで、タグやタイトルから記事を検索したり、データを効率的に活用できるます。本記事ではPythonを使って、Qiita APIの記事情報を取得する方法を解説しております。

Qiita APIとは

Qiitaが提供するWeb APIで、Qiitaのプラットフォーム上にあるさまざまなデータや機能にアクセスするためのインターフェースです。Qiitaは、プログラミングや技術に関する情報を共有するためのコミュニティであり、APIを利用することで、記事に関する様々な情報を取得することができます。

Qiita APIでできること

記事の取得
Qiitaに投稿された記事を検索したり、特定の条件に基づいて取得することができます。

ユーザー情報の取得
Qiitaユーザーのプロフィール情報やフォロワー、フォローしているユーザーの情報を取得できます。

タグ情報の取得
Qiitaで使用されているタグの情報を取得し、どのタグがどれだけの数の記事に関連しているかを分析することができます。

検索機能
キーワードやタグを使用して、関連する記事を検索することができ、必要な情報を迅速に見つけることができます。

認証について

未認証の場合は1時間に60回までのリクエスト制限があるところ、認証をすることで1時間に1000回までリクエストが可能になります。

アクセストークンの発行

Qiitaにログイン後、「個人用アクセストークン」のところに「新しくトークンを発行する」のリンクから発行できます。

スクリーンショット 2024-10-09 184227.png

今回は「read_qiita」にチェックし、「発行する」をクリックします。
スクリーンショット 2024-10-09 184758.png

トークンが発行されますが、一度しか表示されないのでメモをしておきましょう。

実装

では実際にPythonでQiitaの記事情報を取得してみたいと思います。
ここではタイトルとタグを取得してみたいと思います。

まずライブラリをインポートします。

import requests

headerとparamsを定義します。
pageはページ数、per_pageは1ページ当たりの記事数を表しています。
queryは検索機能のようなもので、title:pythonでtitleにpythonが含まれているものを取得します。

token = "先ほどメモしたアクセストークン"
url = f'https://qiita.com/api/v2/items'
headers = {
    "Authorization":"Bearer " + token
}
params = {
    "page":1,
    "per_page":10,
    "query":"title:python"
}

先ほどの条件に当てはまる記事のデータをjson形式で出力します。

res = requests.get(url,params = params,headers = headers)
data = res.json()

記事のタイトルとタグを取得していきます。

for item in data:
    item["title"]
    tags = item["tags"]
    for tag in tags:
        tag["name"]

正しく記事のタイトルとタグが取得できてれば成功です。

おわりに

Pythonを使用することで、Qiita APIから効率的に記事の内容を取得することができます。さらに取得したデータを用いて、データ分析をすることも可能です。今後Qiita APIを使用する機会があれば、本記事で学んだ内容を生かしてみてください。

0
0
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
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?