frissyn / valorant.py

Complete Python interface for the Valorant API. Works right out of the box!
https://valorantpy.readthedocs.io
MIT License
124 stars 19 forks source link

probleme de klef API #48

Open ElectroNath24 opened 8 months ago

ElectroNath24 commented 8 months ago

bonjours ,je suis nouveau sur cette bibliothèque et j'ai essayé le code suivant `

import os import valorant

KEY = os.environ["RGAPI-*749ec-2cb4-40eb-88bc-**"]

client = valorant.Client(KEY, locale=None)

skins = client.get_skins() name = input("Search a Valorant Skin Collection: ")

results = skins.find_all(name=lambda x: name.lower() in x.lower())

print("\nResults: ") for skin in results: print(f"\t{skin.name.ljust(21)} ({skin.localizedNames['ja-JP']})")

et j'obtien l'erreur suivante KeyError: 'RGAPI-*749ec-2cb4-40eb-88bc-**' ` les codes où j'initialise la clé API avec un simple string fonctionne correctement mais pas ceux avec les crocher donc des liste

MathiasSchweitzer commented 8 months ago

(Quand tu fais une demande suite à une erreur, essaie de la faire en anglais pour avoir de l'aide plus facilement)

os.environ permet d'accéder aux variables d'environnement. Tu peux voir ça comme un dictionnaire (donc couple clé-valeur) stocké dans l'ordinateur qui essaie d'accéder à la clé "RGAPI...", que tu n'as probablement pas définie. Surtout que le but de cette manipulation est pour cacher la clé qui permet de contrôler l'API Riot, donc il ne faut pas que ça soit la clé. Donc remplace ce qu'il y a entre les guillemets par quelque chose comme "RiotKey". Ensuite, cherche les variables d'environnement système. image Une fois dedans, accède aux variables, image puis tu appuies sur le "Nouvelle" (en haut pour la déclarer uniquement pour ton compte, en bas pour la déclarer sur l'ordinateur entier). Dans "Nom de la variable" tu remet ce que tu as dans le code, que j'avais indiqué comme "RiotKey" (sans guillemet), et dans "Valeur de la variable" il faut mettre la clé que t'as fourni Riot. Il te suffit ensuite de valider la nouvelle variable, et ton code marchera sans souci tout en cachant ta clé si tu veux le partager.

ElectroNath24 commented 8 months ago

ok merci mais le code pour obtenir mon rank me donne cette erreur ca vien de la? ` import os import valorant

KEY = os.environ["APIvalo"] client = valorant.Client(KEY, locale="fr-FR")

account = client.get_user_by_name("ElectroNath#1234")

match = account.matchlist().history.find(queueId="competitive")

if match == None: print("No Ranked match in recent history!") exit(1) else: match = match.get()

for team in match.teams: print(f"{team.teamId} Team's Ranks: ")

players = match.players.get_all(teamId=team.teamId)

for player in players:
    print(f"\t{player.gameName} - {player.rank}")`

image je voulais faire un code qui recupere mon nombre de kill je suis pas sur de l'avoir formulé corectement ` import os import valorant

KEY = os.environ["APIvalo"] client = valorant.Client(KEY, locale="fr-FR")

i = valorant.killDTO("killer") print(i) `

ElectroNath24 commented 7 months ago

Cette conversation s'est poursuivie sur discord et pour les réponses voici ce que j'ai pu obtenir : L'erreur vient du fait que les informations relatives a un joueur en particulier sont bloquées au utilisateur n'ayant qu'une clé temporaire.les clé personnelle ne peuvent pas non plus récupérer ces données car il n'y a pas de clé personnelle pour valorant donc même pour une autres utilisations seule les clés de développement peuvent fonctionner.Ces clé requière un prototype fonctionnelle et là je ne vois pas comment vous pourrez faire car pour pouvoir faire un prototype fonctionnelle il vous faut une clé API de développement.

Je ferme cette discussion