【Python】「ALISのAPIのドキュメント」を利用する方法


リンク:

アリスブログ「ALISのAPI」を使用する方法まとめ > 当記事


◆ 【Python】「ALISのAPIのドキュメント」を利用する方法

ALISのAPIを読み込むプログラムの説明」の続きです。

ここでは、「APIを呼び出すプログラム」と「ALISのAPIのドキュメント」の関係性を説明していきます。


○ 留意事項

・「2018/09/09」に作成された記事です

・Pythonの経験は浅いので、内容の一部に誤りがあるかもしれません


○ 関連記事



◆ ALISのAPIを読み込むプログラムの基本型(省略型)

import urllib.request
import json
import pprint

url_name1 = 'https://alis.to/api/articles/recent?limit=1'

cm_data1 = urllib.request.urlopen(url_name1)

article_box1 = json.loads(cm_data1.read().decode("utf-8"))

pprint.pprint(article_box1['Items'])


input('Enterキーで終了')

(前々からAPIを読み込むプログラムの動作原理を記載してきたので、このプログラムの説明は省略)


様々なAPIを呼び出す上で、重要となる部分は、

url_name1 = 'https://alis.to/api/articles/recent?limit=1'

の部分になります。

この中の「https://alis.to/api/articles/recent?limit=1」を任意のものに置き換えることで、ALISの色々なデータを呼び出すことができます。


◆ 「ALISのAPIのドキュメント」の説明

「url_name1」に何を入れればよいのかについては、「ALISのAPIのドキュメント」のページから判断します。


上記のサイトを訪れると、

このようなページが表示されて、どのようなAPIが存在しているのかを把握することが可能です


○ 「ALISのAPIのドキュメント」の説明

・一番左の「GET」という文字について

HTTPの「リクエストメソッド」です。


・GET …… ALISから情報を得る

・POST …… ALISに情報を送る(投稿など)

・PUT …… ALISの情報を更新する

・DELETE …… ALISの情報を削除する


こんな感じ。

基本的に、GET以外は、ログイン情報が必要なので、情報の取得を主体とする場合は、特に使用しません


・「GET」の右側に書かれているURLについて

https://alis.to/api」以降に書かれているURL文のことです。


例えば、「/articles/popular」のケースですと、

「https://alis.to/api」と「/articles/popular」が合体して、

https://alis.to/api/articles/popular」になります。


これは、ALISの人気記事を取得するAPIであり、

上記の「url_name1」の中身を

url_name1 = 'https://alis.to/api/articles/recent?limit=1'

url_name1 = 'https://alis.to/api/articles/popular'

に変更してから実行すると、

ALISの人気記事(popular)のデータを取得することができます

(引数を指定しなかった場合は、一定の数の人気記事を取得します)


・右側に描かれている「鍵マーク」について

ログイン情報が必要になるAPIです。

(「/me/」系の個人情報を取得するものは、全て認証が必要になります)

この記事で使用することはないので、説明は省略。


○ APIの詳細について

各 APIの項目を選択すると、以下のような詳細が表示されます。

リクエストメソッド(GET等)の下には、このAPIで何ができるのかの説明が記載されているので、それを読んで、各APIの仕組みを理解しましょう!

(「/articles/popular」の場合は、「人気記事一覧情報を取得」と書かれているので、このAPIを利用すれば、ALISから人気記事一覧を取得することができる、ということがわかります


・パラメータについて(Parameters)

「/articles/popular」では、(現時点だと)「limit」「page」「topic」という3つの引数が存在しており、これらをAPIのURLの後に記載することで、取得するJSONデータを変更することができます


・例1

url_name1 = 'https://alis.to/api/articles/?limit=3'

と記載すると、人気記事一覧を「3件だけ」取得するようになります。


※1 「?」は引数を追加する時に記載しなければならない「宣言の文字」です

※2 パラメータの「=」の式には、「半角スペース」を入れないで下さい


・例2

url_name1 = 'https://alis.to/api/articles/popular?limit=3&page=2&topic=gourmet'

こちらは、トピック「グルメ」(topic = gourmetの「人気記事一覧」を、「3件飛ばして」(page = 2)、そこから「3件」を取得するプログラムになります。


※1 複数の引数を設定したい時は、「&」で結ぶ必要があります

※2 page(offset)で「スキップされる件数」は、「limit * (page-1)」です(「page=0」にすると、エラーが発生します)

※3 ALISのWebページでは、キャッシュが取られているため(数分前の記事の情報が残っているため)、APIで呼び出した最新情報に対して違いが生じることもあります

※4 呼び出したい「トピック名」の「英文字」がよくわからない場合は、ALISの各トピックのページの「URL」を閲覧すれば、確認することができます

※5 「popular」の場合は、「recent」と違って、「body」(記事の本文)は取得しません


・名前(「limit」等)の下に書かれている「integer」や「string」について

要求している変数の型です。


・「integer」は、小数点のない数字(int型)

・「string」は、文字列


を求めています。

(パラメータの「○○ =」の先には、「型に合わせた値」の記述が必要になります)

(例:「limit」は「int型」の要求なので、「limit=3」とかでOK)


・追記:「* required」について

APIのパラメータ中には、赤文字で「* required」と書かれたものがあります。

これは、そのパラメータの入力が必須であることを示しています


……もし、「* required」が記載されているAPIを呼び出す時は、「* required」が指定されているパラメータを必ず入力して下さい。



◆ 指定されているパラメータに合わせて、JSONデータをリクエストしてみよう!

「ALISのAPIのドキュメント」を読んでから、「url_name1 = 'https://alis.to/api/articles/popular」のURLを任意のものに変更すれば、「いいねの数」や「特定の記事の情報」等を取得したりすることもできるようになります

上記の情報を参考にしながら、ALISから様々なデータを呼び出してみて下さい!



「『ALISのAPI』を使用する方法まとめ」に戻る




◆ 「ゆうき」のツイッター


公開日:2018/09/09
獲得ALIS:29.69
ゆうき / アリスブロガー's icon'
  • ゆうき / アリスブロガー
  • @yuuki
ALISブロガーです。スキル:SEO対策、ライティング、プログラム等。ALISでは「記事制作のアドバイス」や「情報提供」などを行っています。よろしくお願いします。Twitter yuuki_tw1
コメントする
コメントする