Défi
Étant donné le nom d' un utilisateur (et non son ID, nous avons déjà ce défi), affichez sa réputation actuelle et son ID.
Contribution
L'entrée sera une chaîne unique qui est le nom d'utilisateur de l'utilisateur. Vous pouvez supposer que cet utilisateur existe.
Production
La sortie sera deux entiers à STDOUT ou STDERR qui seront la réputation de l'utilisateur et l'ID de l'utilisateur. Ils doivent être dans cet ordre spécifique et peuvent être sortis dans n'importe quel format raisonnable
Détails
- La sortie de réputation ne doit pas être dépassée de plus de 10 minutes.
- Votre programme ne doit pas générer d'erreurs pendant l'exécution normale
- Des échappatoires standard s'appliquent (y compris aucun raccourcisseur d'URL)
- S'il y a plus d'un utilisateur avec ce nom d'utilisateur, vous pouvez afficher les statistiques de n'importe quel utilisateur avec ce nom d'utilisateur. C'est aussi pourquoi vous devez sortir l'ID.
- La réputation à produire est la réputation de l'utilisateur sur PPCG, pas le score total du réseau.
Le site de l'API Stack Exchange se trouve ici . Vous pouvez lire la documentation à partir de là.
code-golf
stack-exchange-api
HyperNeutrino
la source
la source
Réponses:
Bash + JQ , 93 octets
Annulé la version 87 octets, car elle ne gérait pas correctement les réponses multi-utilisateurs.
Golfé
Sortira le premier identifiant utilisateur et la réputation sur les lignes séparées.
Comment ça fonctionne ?
1)
curl + zcat
sont utilisés pour récupérer la réponse de l'API au format JSON2)
jq ..|numbers
dépliera JSON récursivement et imprimera toutes les valeurs numériques, une par ligne(les numéros de ligne ont été ajoutés à
nl
des fins d'illustration uniquement)3) Ensuite, nous utilisons
sed
pour rechercher le premieraccount_id
etreputation
, par leurs numéros de ligne absolusTester
la source
JavaScript (ES6),
145 139 136 125 123117 octets6 octets enregistrés grâce à Shaggy et 6 octets grâce à Cyoce.
Je ne sais pas s'il devrait afficher tous les utilisateurs du même nom, ou seulement l'un d'entre eux; ce code les renvoie tous.
la source
"//api.stackexchange.com/users?site=codegolf&inname="+a
._=>alert(_)
par justealert
?Python 2,
178169149 149 octetsJ'utiliserais des demandes pour cela:
Fondamentalement, il utilise l'API de la pile pour récupérer les informations au format JSON, puis obtient l'élément «réputation». De plus, l' API comportait de nombreux paramètres supplémentaires, je les ai également rasés.
De généreuses contributions de: carusocomputing, ElPedro, Malivil, Keerthana Prabhakaran
la source
["items"][0]
cela n'obtient que le premier résultat, dans le cas de plusieurs utilisateurs, il ignorera toujours les extras si je ne me trompe pas.import requests as r
etr.get(...
enregistre 4 octets.?site=codegolf&inname="
from requests import*;a=get()
réduit un octet!Groovy,
144156 octetsFermeture anonyme.
EDIT: oublié d'utiliser l'importation de
groovy.json.
pour JSON Slurper + 14 octets.Exemple de sortie
[[UserID, Reputation],...]
:la source
Swift,
225201 octetsNon golfé:
Exemple de sortie:
la source