89 votes

La bibliothèque python la mieux adaptée à Github API v3

Je suis à la recherche d'une bibliothèque python pour le Github APIv3 adapté pour moi. Contexte: je suis un python noob avec un fond principalement ancrée dans Matlab et C++, et nous avons récemment appris à utiliser python-matplotlib.

J'en ai trouvé une bibliothèque (python-github3) mentionné dans la GH API docs. Après avoir joué avec elle dans ipython pour une heure ou deux, je l'ai trouvé vraiment pas intuitif à explorer et de travailler avec. J'ai regardé un peu plus, et trouvé il y a un certain nombre de personnes, au moins, de tenter d'écrire une telle bibliothèque. Le plus prometteur prospective (un coup d'œil) sont PyGithub et un autre python-github3, qui, apparemment, est différente de la première.

Avant que je passe les prochains jours consécutivement à essayer de la bibliothèque après la bibliothèque, je voulais vous demander la, DONC de la communauté, si il est accepté, en définitive, le choix évident pour que la bibliothèque?

Ce que je n'aime pas sur la première bibliothèque a l' (pour moi) pas intuitif moyen d'obtenir des données certaines choses que vous obtenez en tant qu'attributs, certains vous obtenez comme valeur de retour d'une méthode, que la valeur de retour est complexe de l'objet qui doit être paginé et itérer, etc.

À cet égard, PyGithub l'air plus attrayant au premier abord, clairement forer vers le bas par l'intermédiaire d'un objet de la hiérarchie, et puis arriver à l'attribut contenant ce que vous voulez:

for repo in g.get_user().get_repos(): print repo.name

Donc, une des perles de la sagesse à partager? Je sais que je n'ai pas de compétences assez rapidement juger de la bibliothèque de la qualité, c'est pourquoi je suis en tournant à la communauté.

edit: fwiw, je me suis retrouvé à l'aide de PyGithub. Il fonctionne bien, et l'auteur est vraiment réceptifs de commentaires et rapports de bogues. :-)

78voto

Lycha Points 5493

Puisque vous avez mentionné que vous êtes un débutant en python programmeur, je vous suggère d'essayer d'utiliser l'API JSON sans Github bibliothèque en premier. Ce n'est vraiment pas difficile, et il va vous aider à beaucoup plus tard dans votre vie de programmation étant donné que la même approche peut être appliquée à toutes les API JSON. Surtout si il semble que d'essayer des bibliothèques va prendre des jours.

Je ne dis pas que la bibliothèque n'est pas plus facile à utiliser, je dis juste que le petit effort supplémentaire pour l'utilisation de l'API directement peut-être la peine dans le long terme. Au moins il va vous aider à comprendre pourquoi certaines de ces bibliothèques semblent "pas intuitif" (comme on dit).

Exemple Simple pour récupérer moment de la création de django référentiel:

import requests
import json
r = requests.get('https://api.github.com/repos/django/django')
if(r.ok):
    repoItem = json.loads(r.text or r.content)
    print "Django repository created: " + repoItem['created_at']

C'est à l'aide de la populaire demandes de la bibliothèque. Dans votre code, vous aurez naturellement besoin de gérer les cas d'erreur de trop.

Si vous avez besoin d'accès avec authentification il sera un peu plus complexe.

1voto

DmitrySandalov Points 480

Libsaas est idéal pour les débutants. Il a une belle documentation et est facile à utiliser, voir exemple . N'hésitez pas à contribuer.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X