Le SDK Python
Un SDK Python entièrement typé pour l’API TCGdex qui vous permet d’accéder aux données du Jeu de Cartes à Collectionner Pokémon avec des options synchrones et asynchrones.
from tcgdexsdk import TCGdex, Extension
# Initialisation du SDKtcgdex = TCGdex()
# Récupérer une carte en une lignecard = await tcgdex.card.get("swsh3-136")# Ou utiliser la version synchronecard = tcgdex.card.getSync("swsh3-136")
print(f"Trouvé : {card.name} ({card.localId}/{card.set.cardCount.total})")
Installation et Configuration de Base
Section intitulée « Installation et Configuration de Base »-
Installez le SDK en utilisant pip :
Fenêtre de terminal pip install tcgdex-sdk -
Importez et initialisez :
from tcgdexsdk import TCGdex, Languagetcgdex = TCGdex() # Initialisation avec la langue par défaut (Anglais)# Initialisation avec la langue en format chaînetcgdex = TCGdex("fr")# Ou en utilisant l'énumération Languagetcgdex = TCGdex(Language.FR) -
Commencez à faire des requêtes :
# Utilisation asynchronecard = await tcgdex.card.get("swsh3-136")# Utilisation synchronecard = tcgdex.card.getSync("swsh3-136")
Fonctionnalités Clés
Section intitulée « Fonctionnalités Clés »- Sécurité de Type : Tous les modèles sont entièrement typés pour une meilleure intégration IDE
- API Double : Interfaces asynchrones et synchrones
- Requêtes Flexibles : Puissant constructeur de requêtes pour filtrer et trier les résultats
- Support Multi-langues : Accédez aux données des cartes en plusieurs langues
- Modèles Complets : Modèles de données détaillés pour cartes, sets, séries, et plus
- Accès aux Images : Accès direct aux images des cartes et aux symboles des sets
Endpoints
Section intitulée « Endpoints »Le SDK fournit des Endpoints spécialisés pour différents types de données :
sdk = TCGdex()
# Endpoint de base pour les cartessdk.card # Informations complètes sur les cartes
# Endpoints des collectionssdk.set # Sets de cartes (ex. "Évolutions à Paldea")sdk.serie # Séries de cartes (ex. "Épée et Bouclier")
# Endpoints des données de cartessdk.rarity # Raretés des cartessdk.hp # Valeurs de PVsdk.illustrator # Illustrateurs des cartes
# Endpoints des mécanismes de jeusdk.type # Types de Pokémonsdk.energyType # Types d'énergiesdk.retreat # Coûts de retraitesdk.stage # Stades d'évolution
# Endpoints des détails des cartessdk.variant # Variantes de cartes (holo, reverse, etc.)sdk.suffix # Suffixes des cartessdk.regulationMark # Marques de régulationsdk.dexId # IDs du Pokédex
Exemples de Requêtes
Section intitulée « Exemples de Requêtes »Le SDK inclut un puissant constructeur de requêtes pour filtrer et trier les résultats :
from tcgdexsdk import TCGdex, Query
sdk = TCGdex(Language.FR)
# Trouver toutes les cartes avec un nom spécifiquefurrets = await sdk.card.list(Query().equal("name", "Fouinar"))
# Trouver les cartes avec 'ban' dans le nom de l'illustrateur (insensible à la casse)ban_cards = await sdk.card.list(Query().contains("illustrator", "ban"))
# Trouver les Pokémon à PV élevé, triés par PVtanks = await sdk.card.list( Query() .greaterThan("hp", 200) .sort("hp", "desc"))
# Trouver les cartes sans attaques mais avec des capacitésbasics = await sdk.card.list( Query() .isNull("attacks") .notNull("abilities"))
# Support de paginationpage2 = await sdk.card.list( Query().paginate(page=2, itemsPerPage=20))
Support des Langues
Section intitulée « Support des Langues »Le SDK prend en charge plusieurs langues pour les données des cartes :
from tcgdexsdk import TCGdex, Language
# Utilisation des codes en chaîne de caractèresen_sdk = TCGdex("en") # Anglaisfr_sdk = TCGdex("fr") # Françaisde_sdk = TCGdex("de") # Allemand
# Utilisation de l'énumération pour la sécurité de typejp_sdk = TCGdex(Language.EN) # par défaut en anglais si non défini
# Changer la langue sur une instance existantesdk = TCGdex()sdk.setLanguage(Language.FR)
Liste complète des codes de langues
Travailler avec les Images
Section intitulée « Travailler avec les Images »Les cartes, sets et séries comprennent souvent des images qui peuvent être consultées :
from tcgdexsdk.enums import Quality, Extension
# Obtenir une cartecard = await sdk.card.get("swsh3-136")
# Obtenir l'URL de l'image avec qualité et formatimage_url = card.get_image_url(quality="high", extension="png")# Ou en utilisant des énumérationsimage_url = card.get_image_url(Quality.HIGH, Extension.PNG)
# Télécharger l'image directementimage_data = card.get_image(Quality.HIGH, Extension.PNG)
# Les sets et séries ont aussi des méthodes pour les imagesset_data = await sdk.set.get("swsh3")
logo_url = set_data.get_logo_url(Extension.PNG)logo = set_data.get_logo(Extension.PNG)
symbol_url = set_data.get_symbol_url(Extension.WEBP)symbol = set_data.get_symbol(Extension.WEBP)