def load_type_from_api(name): request = requests.get(f'https://pokeapi.co/api/v2/type/{name}') data = request.json() generation = Generation.get_or_none(name=data['generation']['name']) if generation is None: generation = Generation.create(name=data['generation']['name']) type = Type.get_or_none(name=data['name']) if type is None: type = Type.create(name=data['name'], generation=generation) return type
def load_pokemon_types_from_api(name): request = requests.get(f'https://pokeapi.co/api/v2/pokemon/{name}') pokemon_data = request.json() pokemon = get_pokemon_by_name(name) PokemonTypes.delete().where(PokemonTypes.pokemon == pokemon).execute() types = [] for api_type in pokemon_data['types']: type_name = api_type['type']['name'] type = Type.get_or_none(name=type_name) pokemon_type = PokemonTypes.create(pokemon=pokemon, type=type, slot=api_type['slot']) types.append(pokemon_type) return types
def get_type_name(name): type = Type.get_or_none(name=name) return type