9
7

More than 1 year has passed since last update.

【Python×API】ポケモンを検索するアプリ

Posted at

初めに

どうやらポケモンのデータを取得することができるAPIが存在するらしい。。
得られるデータは「名前」「図鑑ID」「タイプ」「ポケモンの画像」など!

使い方は簡単で、以下のURLにIDを入れるだけです。
※名前で検索することも可能らしい。。

丁度PythonでWebAPIの呼び方を備忘録としてまとめようと
考えていたので、どうせなら面白そうな内容と考えこの記事を作成しました!

早速使ってみましょう!!!

PokéAPI

例えばイーブイ(No.133)を表示する際は、以下の通り指定する必要があります。

名前指定:https://pokeapi.co/api/v2/pokemon/eevee/
図鑑№指定:https://pokeapi.co/api/v2/pokemon/133/

「eecee」はポケモンの名前、「133」は図鑑IDになります。
上記のように指定すると、ポケモンの情報が取得できます。
image.png

ソースコード

pokemon.py
import requests

url = "https://pokeapi.co/api/v2/pokemon/"

print('ポケモン図鑑番号を入れてください')
# 入力文字を取得
poke_id = input('>> ')

# バリデーションチェック
while True:
    # 範囲は1〜905 (2022/10現在)
    judge = 0 <= int(poke_id) < 906

    if not judge:
        # 存在しないIDを記述したら、再入力を求める
        print('存在しないポケモンIDを入力しています!再度入力してください。')
        poke_id = input('>> ')

    else:
        # 正しければループを抜ける
        break

# urlに図鑑IDを付与
url = url + poke_id

response = requests.get(url)
response = response.json()

# 名前
name = response['name']
# ID
id = response['id']
# ポケモン画像
image = response['sprites']['front_default']
# タイプ
types = response['types'][0]['type']['name']

print(id)
print(name)
print(image)
print(types)

警告
2022/10現在では、ポケモンの種類は905匹だそうです。

出力結果

# 図鑑ID
133 
# 名前
eevee
# ポケモンのタイプ
normal

画像も取得できます!

image.png

最後に

実装自体は大した内容ではありませんが、APIにも面白いものがあるんだなー
と率直に感じました!

後日フロントの言語を使用して、ポケモン図鑑なるものを作成したいと
思います。。

取得できる情報は英語なので、少々違和感がありますが
皆様もポケモン図鑑の作成にチャレンジしてみてはいかがでしょうか?

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