This is primarily for exploring the pokemon api at https://pokeapi.co/ for a bit of fun.
In [120]:
import pandas as pd
from pandas import DataFrame, Series
import seaborn as sns
import numpy as np
import requests
import json
from IPython.core.display import Image, display
from IPython.display import Image, Markdown
import random
In [121]:
generations = [151, 252, 802]
pokemon_number = random.randint(1, generations[1])
pokemon_url = 'http://pokeapi.co/api/v2/pokemon/{}/'.format(pokemon_number)
response_json = requests.get(pokemon_url).json()
pokemon_name = response_json['name'].title()
sprites = response_json['sprites']
sprite_url = sprites['front_default']
display(Markdown("#### A wild {} appeared!".format(pokemon_name)))
display(Image(sprite_url))
In [122]:
for sprite_name in sprites:
sprite_url = sprites[sprite_name]
if sprite_url is not None:
display(Image(url=sprite_url))
In [123]:
pokemon_move = response_json['moves'][0]['move']['name'].title()
display(Markdown("#### {} just learned {}!".format(pokemon_name, pokemon_move)))
In [115]:
pokemon_moves = response_json['moves']
display(Markdown("#### These are the moves {} can learn:\n".format(pokemon_name)))
for move in pokemon_moves:
move_name = move['move']['name'].title()
level_learned_at = move['version_group_details'][0]['level_learned_at']
print('{0:15}{1}'.format(move_name, level_learned_at))
In [124]:
display(Markdown("#### {}'s base stats".format(pokemon_name)))
stats_json = response_json['stats']
base_stats = {}
for stat in stats_json:
stat_name = stat['stat']['name'].title()
base_stat = stat['base_stat']
print("{0:15} {1}".format(stat_name, base_stat))
In [125]:
pokemon_index = random.sample(range(1, 100), 3)
df = DataFrame()
responses = []
for index in pokemon_index:
response_json = requests.get('http://pokeapi.co/api/v2/pokemon/{}/'.format(index)).json()
name = response_json['name'].title()
print(name)
for stat in response_json['stats']:
stat_name = stat['stat']['name']
base_stat = stat['base_stat']
print("{0:15} {1}".format(stat_name, base_stat))
print()
Possible Ideas:
Graph the stats amongst each of the pokemon to determine who is best for attack, defense, etc
In [118]:
res = requests.get("http://pokeapi.co/api/v2/location/67/").json()
print(json.dumps(res, indent=4))
In [119]:
r = requests.get('http://pokeapi.co/api/v2/pokemon/1/')
json_j = r.json()
for attr in json_j:
print(attr)
In [ ]:
In [ ]:
In [ ]:
In [ ]:
In [ ]:
In [ ]: