IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques tierces Python Discussion :

[github] tree hash


Sujet :

Bibliothèques tierces Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2018
    Messages
    537
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Avril 2018
    Messages : 537
    Par défaut [github] tree hash
    Bonjour,

    J'essaye de récuperer les fichiers d'un compte de test sur github (avec l'api github v3)

    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    nom = 'nom'
    passe = 'pass'
    nomRepository = 'nomRepository'
    nomDeBranche = 'nomDeBranche'
    
    githubLog = login(username=nom, password=passe)
    repository = githubLog.repository(nom, nomRepository)
    
    # je sais pas pourquoi mais ca marche comme ça (.tree au lieu de .branch)
    tree = repository.tree(nomDeBranche)
    
    print(tree.tree)
    print(tree.tree[0].path)
    # print(tree.tree[0].tree  ->  cet objet n'a pas l'attribut tree



    Dans ma branche j'ai 2 dossiers qui contiennent chacun quelques fichiers

    print(tree.tree) me renvoie le nom des dossiers en <hash>
    print(tree.tree[0].path) me renvoie le nom du dossier


    J'essaye dans un premier temps d'avoir au moins le nom du fichier (histoire de comprendre la structure)
    j'aimerais récupérer les fichiers a l'intérieur apres avoir relu 36 fois la doc je trouve pas
    Si vous avez une idée...

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    795
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 795
    Par défaut
    Bonjour,

    Sauf si j'ai mal compris la doc, ça ne serait pas directory_contents ?

  3. #3
    Membre chevronné
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2018
    Messages
    537
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Avril 2018
    Messages : 537
    Par défaut
    Malheureusement ce n 'est pas ca

    File "/usr/local/lib/python3.6/dist-packages/github3.py-1.1.0-py3.6.egg/github3/models.py", line 58, in __getattr__
    AttributeError: directory_contents
    edit : (j'avais mal lu )

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    print(repository.directory_contents('dossier'))
    [('.gitignore', <Contents [dossier/.gitignore]>), ('fichier2', <Contents [dossier/fichier2]>)]
    Et comment je fais pour lire ça on dirait un json mais même pas
    Est-ce possible de transformer les < et > en quote et les parentheses en accolade puis de lire le json

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    795
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 795
    Par défaut
    donc tu as bien le nom des fichiers + une instance de la class Contents
    Si tu veux le contenu des fichiers, il suffit d'utiliser (à priori) les méthodes de cette classe

  5. #5
    Membre chevronné
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2018
    Messages
    537
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Avril 2018
    Messages : 537
    Par défaut
    Merci de suivre mon post

    J'ai utilisé file_contents(chemincomplet)

    Et ca m'a renvoyé

    <Contents [dossier/fichier2]>
    Je regarde si je trouve quelque chose je te tiens au courant

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    795
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 795
    Par défaut
    cette fonction retourne également une instance de la classe Contents
    pourquoi ne pas l'utiliser ?
    Voici un exemple (non testé, basé uniquement sur la doc) avec la méthode directory_contents

    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    for (path, content) in repository.directory_contents('dossier'):
       print (content.content)
       print (content.decoded.decode('utf-8'))

  7. #7
    Membre chevronné
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2018
    Messages
    537
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Avril 2018
    Messages : 537
    Par défaut [github]directory_contents retourne None
    Bonjour

    Comment je peux récupéré ce qu'il y a à l'intérieur des fichiers d'un dossier?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    nom = 'nom'
    passe = 'pass'
    nomRepository = 'nomRepository'
    nomDeBranche = 'nomDeBranche'
     
    githubLog = login(username=nom, password=passe)
    repository = githubLog.repository(nom, nomRepository)
     
    for (path, content) in repository.directory_contents('dossier'):
            print (content.size) # bytes
            print (content.content)
    Voici ce qui est retourné:

    content.size => 92
    content.content => None
    j'ai suivi la doc officielle
    (merci de ne pas déplacer le sujet vers librairies tierces car personne ne regarde la bas)

  8. #8
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 748
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 748
    Par défaut
    Citation Envoyé par bonjourajax Voir le message
    (merci de ne pas déplacer le sujet vers librairies tierces car personne ne regarde la bas)
    A vous savez on ne fait que partager l'expérience qu'on a sur telle ou telle bibliothèque...
    Donc si ceux qui ont utilisé github sont rares et en vacances, il faut patienter.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  9. #9
    Membre chevronné
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2018
    Messages
    537
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Avril 2018
    Messages : 537
    Par défaut
    Je comprends bien mais mon sujet commençait à se perdre
    Le probleme avec cette bibliotheque est qu'elle a été mise a jour régulierement d'apres ce que j'ai pu voir et la plupart des fonctionnalités ont changé de nom entre les différentes versions
    Il n'y aurait pas un moyen avec du python "pur" de coder des fonctionnalités pour l'api github?

    - B

  10. #10
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 748
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 748
    Par défaut
    Citation Envoyé par bonjourajax Voir le message
    Je comprends bien mais mon sujet commençait à se perdre
    Certes mais, c'est un forum de discussion pas un centre d'appels...
    Donc vous avez des réponses et de l'aide tant mieux et si vous n'obtenez rien parce que votre sujet n'intéresse par grand monde, tant pis. De plus, les "up" sont sanctionnés.


    Citation Envoyé par bonjourajax Voir le message
    Il n'y aurait pas un moyen avec du python "pur" de coder des fonctionnalités pour l'api github?
    github3 est déjà "python pur" et se contente de faire des requêtes HTTP au serveur github.
    Vous pouvez allez voir les sources ici.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  11. #11
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    795
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 795
    Par défaut
    Bonjour

    Aurais tu la possibilité de créer un utilisateur read-only qu'on puisse faire quelques tests...
    Je pense à plusieurs piste mais qui me paraissent peu probable comme par exemple récupérer le sha1, utiliser les objets Blob ...

    Tu peux essayer aussi

Discussions similaires

  1. Tiger Tree Hash
    Par champy dans le forum Général Java
    Réponses: 2
    Dernier message: 21/12/2007, 13h03
  2. Tables de hash
    Par miss8 dans le forum C
    Réponses: 2
    Dernier message: 16/11/2002, 17h44
  3. pb formatage document XML généré par un dom tree
    Par lionel69 dans le forum APIs
    Réponses: 11
    Dernier message: 17/10/2002, 09h53
  4. BTREE & B+TREE
    Par TuxP dans le forum Algorithmes et structures de données
    Réponses: 2
    Dernier message: 09/08/2002, 17h27
  5. Recherche algo tree
    Par Anonymous dans le forum Algorithmes et structures de données
    Réponses: 10
    Dernier message: 24/05/2002, 13h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo