|
import requests |
|
import json |
|
import time |
|
|
|
def build_fr_to_en_map(): |
|
fr_to_en = {} |
|
total_species = 1025 |
|
print("⏳ Récupération des noms depuis PokéAPI...") |
|
|
|
for species_id in range(1, total_species + 1): |
|
url = f"https://pokeapi.co/api/v2/pokemon-species/{species_id}/" |
|
try: |
|
res = requests.get(url) |
|
res.raise_for_status() |
|
data = res.json() |
|
|
|
name_en = None |
|
name_fr = None |
|
for entry in data["names"]: |
|
lang = entry["language"]["name"] |
|
if lang == "en": |
|
name_en = entry["name"] |
|
elif lang == "fr": |
|
name_fr = entry["name"] |
|
|
|
if name_en and name_fr: |
|
fr_to_en[name_fr.lower()] = name_en.lower() |
|
|
|
print(f"✅ {species_id}: {name_fr} ➝ {name_en}") |
|
time.sleep(0.1) |
|
|
|
except Exception as e: |
|
print(f"⚠️ Erreur à l'ID {species_id} : {e}") |
|
continue |
|
|
|
return fr_to_en |
|
|
|
if __name__ == "__main__": |
|
mapping = build_fr_to_en_map() |
|
|
|
|
|
with open("fr_to_en_pokemon.json", "w", encoding="utf-8") as f: |
|
json.dump(mapping, f, ensure_ascii=False, indent=2) |
|
|
|
print("\n✅ Fichier 'fr_to_en_pokemon.json' généré avec succès.") |
|
|