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

Python Discussion :

probleme avec API google finance avec python 3.x


Sujet :

Python

  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    58
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2017
    Messages : 58
    Par défaut probleme avec API google finance avec python 3.x
    Bonjour tous le monde,

    j'ai un probleme avec les API google finance ( ça marche très bien avec python 2.x) , je pense qu'il y a des changements dans python 3.x
    voila le code qui me donne un erreur : TypeError: the JSON object must be str, not 'bytes'
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    def get_value(identifier):
            get_value_url = 'http://finance.google.com/finance/info?client=ig&q=' + identifier
            value = subprocess.Popen(['curl', '-s', get_value_url], stdout=subprocess.PIPE).communicate()[0]
            j = json.loads(value[5:len(value) - 2])
            return float(j['l'])
    Merci.

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 761
    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 761
    Par défaut
    Salut,

    TypeError: the JSON object must be str, not 'bytes'Pour passer de "bytes" a "str", il faut apprendre à utiliser .encode (et pris en compte la spécificité JSON).

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

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    58
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2017
    Messages : 58
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    Salut,

    Pour passer de "bytes" a "str", il faut apprendre à utiliser .encode (et pris en compte la spécificité JSON).

    - W
    j'ai pas bien compris , tu peux me donner un solution , je suis débutant en python ?

  4. #4
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 761
    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 761
    Par défaut
    Citation Envoyé par hamzaHDR Voir le message
    tu peux me donner un solution , je suis débutant en python ?
    Tout ce qui est récupéré à l'extérieur d'un programme sont des suites d'octets (bytes) qu'il faut explicitement convertir en "str" (unicode). Ce qui suppose connaître l'encoding utilisé -.
    value.decode('utf-8') devrait fonctionner.
    Mais on ne sait pas comment a été encodé la résultat de la requête http ni celui qui a été utilisé par curl pour l'afficher - c'est pour çà qu'on va préférer utiliser le module "requests".

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

  5. #5
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    58
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2017
    Messages : 58
    Par défaut
    merci @wiztricks pour la réponse, mais ce que j'ai pas compris c'est que le code fonction en python 2.x.
    je sais pas exactement qu'est ce que je dois faire maintenant ?
    tu peux me corriger le code ?

  6. #6
    Expert confirmé
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    4 065
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Lead Dev Python
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2006
    Messages : 4 065
    Par défaut
    Citation Envoyé par hamzaHDR Voir le message
    tu peux me corriger le code ?
    Tu paies combien ?

  7. #7
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    58
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2017
    Messages : 58
    Par défaut
    Citation Envoyé par fred1599 Voir le message
    Tu paies combien ?
    Rien
    Merci Monsieur Fred pour votre aide.

  8. #8
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 761
    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 761
    Par défaut
    Citation Envoyé par hamzaHDR Voir le message
    merci @wiztricks pour la réponse, mais ce que j'ai pas compris c'est que le code fonction en python 2.x.
    Si le numéro de version est passé de 2 à 3, c'est justement pour signaler que des codes anciens pouvaient ne plus fonctionner

    Citation Envoyé par hamzaHDR Voir le message
    tu peux me corriger le code ?
    non, car çà c'est votre boulot (et il vous serait simple d'ajouter à ce code la ligne que je vous ai suggéré si vous aviez pris le temps d'apprendre à programmer avec Python avec un des nombreux tuto. gratuit qui sont à disposition).

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

  9. #9
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    58
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2017
    Messages : 58
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    Si le numéro de version est passé de 2 à 3, c'est justement pour signaler que des codes anciens pouvaient ne plus fonctionner



    non, car çà c'est votre boulot

    - W
    je sais que c'est mon boulot, comme j'avais dit je suis débutant et j'ai cherché partout et j'ai rien trouvé
    pfffff
    de tout façon merci beacoup @wiztricks

  10. #10
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 761
    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 761
    Par défaut
    Citation Envoyé par hamzaHDR Voir le message
    je sais que c'est mon boulot, comme j'avais dit je suis débutant et j'ai cherché partout et j'ai rien trouvé
    Est ce que vous demandez de l'aide pour résoudre les exercices proposé par un tuto. ou pour comprendre les notions/concepts du langage? Pas vraiment.
    De plus, si vous ne connaissez pas les bases, difficile de poser les bonnes question à un moteur de recherche pour trier les différentes solutions.

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

  11. #11
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    58
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2017
    Messages : 58
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    Est ce que vous demandez de l'aide pour résoudre les exercices proposé par un tuto. ou pour comprendre les notions/concepts du langage?

    - W
    je suis en période de stage et j'ai commencé python ça fait quelques mois, et j'ai pas le temps pour suivre un tuto dans le boulot (stage).
    donc si vous avez une solution dite moi svp.

  12. #12
    Membre chevronné
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Mai 2012
    Messages
    321
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Mai 2012
    Messages : 321
    Par défaut
    Ce que wiztricks tente de vous expliquer c'est que :

    -Vous avez récupéré un code "tout fait" qui ne fonctionne pas.
    -Vous n'avez pas tenté de rechercher la cause et/ou la signification des messages d'erreur que vous avez reçus lors de l’exécution du code.
    -Il vous a été donné une piste pour comprendre le pourquoi de cette erreur et du code vous permettant de la corriger.
    -Vous ne présentez aucun code indiquant que vous avez effectuer le moindre effort pour comprendre par vous-même
    -Vous demandez une solution toute faite toute pondue et fonctionnelle pour pouvoir l'utiliser dans un cadre pro (stage)

    Vous comprendrez que dans ces circonstances, ce n'est pas de la demande d'aide, mais de la demande de "travail" tout travail méritant salaire...

    Toutes les personnes qui vous aideront bénévolement ici sont des professionnels. Ils prennent sur leur temps pour aider des gens demandant de l'aide ET faisant preuve de leur engagement et volonté d'apprendre.

    Si vous essayez de votre coté, tentez de comprendre et n'y arrivez pas, ce n'est pas grave. Vous trouverez toujours ici des gens pour vous donner des pistes ou des liens concernant des concepts sur lesquels vous bloquez. Si vous arrivez la bouche en cœur pour demander que l'on fasse le travail à votre place, vous n'aurez pas de réponse...

    Dans le cas présent, des réponses, vous en avez eu. Donc il vous faut maintenant vous mettre au travail et comprendre les dits éléments.

    Vous "n'avez pas le temps de suivre un tuto dans le boulot" ? Prenez le temps en dehors. C'est une question d'implication professionnelle. Vous êtes en stage pour apprendre... et bien apprenez que diantre.

    Bonne journée à vous.

  13. #13
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    58
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2017
    Messages : 58
    Par défaut
    @killian68 bien sur je veux apprendre et j'ai essayé de corrigé le code toute la journée et j'arrive pas à résoudre et meme je vais continue a chercher aujourd'hui j'arrete pas.
    mais c'est quoi le probleme de me dire voila tu dois changé ça et m fait ça .... ?? ?
    de toute façon merci.
    Bonne journée a vous.

  14. #14
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    58
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2017
    Messages : 58
    Par défaut
    bonjour
    j'ai trouvé une solution par moi même

  15. #15
    Membre chevronné
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2004
    Messages
    253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2004
    Messages : 253
    Par défaut
    C'est très bien d'avoir trouvé une solution par vous même, félicitations.
    Le mieux ensuite est d'en faire profiter la communauté: comment avez-vous résolu votre problème ? Réussite dans l'encodage/decodage des bytres reçus / Utiilsation d'une lib particulière / Retour à python 2 / .....

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problèmes avec API Google ou Web?
    Par rocherpat dans le forum Web & réseau
    Réponses: 1
    Dernier message: 12/09/2012, 09h58
  2. probleme d'affichage google map avec proxy
    Par koukou11 dans le forum API standards et tierces
    Réponses: 0
    Dernier message: 08/05/2012, 12h04
  3. [C#][WM 6] Page blanche avec API Google Maps V3
    Par ikeabp dans le forum Windows Mobile
    Réponses: 0
    Dernier message: 08/03/2011, 09h29
  4. api google calendar avec javascript
    Par webax dans le forum Développement Web en Java
    Réponses: 0
    Dernier message: 08/06/2010, 15h54
  5. Affichage avec api google map
    Par S-Kayp dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 29/10/2008, 13h52

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