none
Récupérer des données sur une page internet (qui exécute un.js pour remplir l'html) RRS feed

  • Question

  • Bonjour,

    Je vais vous exposer directement mon problème avec l'url concerné. Je souhaite pour mon usage personnel récupérer le temps d'attente avant le prochain passage du Tram disponible ICI (dans la colonne 'Attente') dans une application en C#.

    Malheureusement avec toutes les différentes approche que j'ai pu trouver sur le web j'obtient un html avec la balise "app-content" de vide : 

    <body>
    	<div id="app-content"></div>
    </body>

    Je ne peux donc pas récupérer l'informations voulu qui, avec un Clique droit -> Inspecter l'élément se trouve bien dans app-content (voir image suivante)

    Comment puis-je récupérer ces informations ?

    Merci

    • Modifié Apyn AOM lundi 8 décembre 2014 22:13
    lundi 8 décembre 2014 22:11

Réponses

  • Bonjour,

    En faite, les données que vous souhaitez reccupérer se retrouvent dans une table qui est générée dynamiquement et raffraichie toutes les 30 secondes.

    <table class="schedule-table">
       <tbody>
          <tr class="table-header">
             <td>Ligne</td>
             <td>Direction</td>
             <td>Attente</td>
          </tr>
          <tr>
             <td><img src="img/pictos_24/1.png" "=""></td>
             <td>Mosson</td>
             <td>2 min</td>
          </tr>
          <tr style="background-color: rgb(228, 232, 236);">
             <td><img src="img/pictos_24/1.png" "=""></td>
             <td>Mosson</td>
             <td>7 min</td>
          </tr>
          <tr>
             <td><img src="img/pictos_24/1.png" "=""></td>
             <td>Mosson</td>
             <td>12 min<sup>*</sup></td>
          </tr>
       </tbody>
    </table>

    Personellement, il y aurait une solution plus simple pour vous pour reccupérer les données, en vous connectant sur les webServices du fournisseur.

    http://www.tam-direct.com/webservice/data.php?pattern=getDetails

    Cependant, il ne me semble pas que cela soit tout à fait légale et je vous invite à prendre conseil auprès du fournisseur en question.

    Cordialement,


    Kevin BEAUGRAND, Modis FRANCE
    Merci de bien vouloir "Marquer comme réponse", les réponses qui ont résolu votre problème.

    • Marqué comme réponse Apyn AOM mardi 9 décembre 2014 14:26
    mardi 9 décembre 2014 09:09
  • Bonjour,

    Ce liens est celui appelé par le JavaScript toutes les 30 secondes.

    Vous pouvez le trouver grâce à la console (outil "Network") de debuggage de votre navigateur internet où via d'autres outils tel que Fiddler.

    Effectivement, le dataset retourné par le webService est consequent puisque toutes les données sont remontées (mais tout de même relatif) :

    - 147Kb pour le dataset retourné

    - 1.01 Mb pour la page entière (et 147Kb toutes les 30 secondes)

    Je vous laisse donc le soins de trouver ce qui est preferable pour vous.

    Concernant le cadre légale ou non, ce n'est pas parceque un service est disponible sur l'internet qu'on peut en faire ce que l'on souhaites. Les contrats d'utilisation sont définis dans les conditions générales (qui sur votre liens ne sont pas présentes). Il faut donc se tourner vers l'éditeur pour connaitres les droits.

    Cordialement,


    Kevin BEAUGRAND, Modis FRANCE
    Merci de bien vouloir "Marquer comme réponse", les réponses qui ont résolu votre problème.

    mardi 9 décembre 2014 13:55

Toutes les réponses

  • Bonjour,

    En faite, les données que vous souhaitez reccupérer se retrouvent dans une table qui est générée dynamiquement et raffraichie toutes les 30 secondes.

    <table class="schedule-table">
       <tbody>
          <tr class="table-header">
             <td>Ligne</td>
             <td>Direction</td>
             <td>Attente</td>
          </tr>
          <tr>
             <td><img src="img/pictos_24/1.png" "=""></td>
             <td>Mosson</td>
             <td>2 min</td>
          </tr>
          <tr style="background-color: rgb(228, 232, 236);">
             <td><img src="img/pictos_24/1.png" "=""></td>
             <td>Mosson</td>
             <td>7 min</td>
          </tr>
          <tr>
             <td><img src="img/pictos_24/1.png" "=""></td>
             <td>Mosson</td>
             <td>12 min<sup>*</sup></td>
          </tr>
       </tbody>
    </table>

    Personellement, il y aurait une solution plus simple pour vous pour reccupérer les données, en vous connectant sur les webServices du fournisseur.

    http://www.tam-direct.com/webservice/data.php?pattern=getDetails

    Cependant, il ne me semble pas que cela soit tout à fait légale et je vous invite à prendre conseil auprès du fournisseur en question.

    Cordialement,


    Kevin BEAUGRAND, Modis FRANCE
    Merci de bien vouloir "Marquer comme réponse", les réponses qui ont résolu votre problème.

    • Marqué comme réponse Apyn AOM mardi 9 décembre 2014 14:26
    mardi 9 décembre 2014 09:09
  • Tout d'abord merci de votre réponse rapide !

    C'est bien ce que j'avais conclu (ne connaissant pas très bien tout ce qui touche à internet).

    En revanche, comment avez-vous trouvé ce lien ? Et ça veut dire que pour mettre à jour les 3 lignes du tableau, il va récupérer toutes les données (y compris celles des autres arrêt) ? Je pose cette question car l'implémentation dans une application mobile me semble un peu lourde si à chaque rafraîchissement on est obligé de récupérer toutes les infos puis ensuite les parser...

    En quoi est-ce illégal ? Sachant que si c'est le cas les données serai protégé (mdp...)

    Cordialement.

    mardi 9 décembre 2014 13:47
  • Bonjour,

    Ce liens est celui appelé par le JavaScript toutes les 30 secondes.

    Vous pouvez le trouver grâce à la console (outil "Network") de debuggage de votre navigateur internet où via d'autres outils tel que Fiddler.

    Effectivement, le dataset retourné par le webService est consequent puisque toutes les données sont remontées (mais tout de même relatif) :

    - 147Kb pour le dataset retourné

    - 1.01 Mb pour la page entière (et 147Kb toutes les 30 secondes)

    Je vous laisse donc le soins de trouver ce qui est preferable pour vous.

    Concernant le cadre légale ou non, ce n'est pas parceque un service est disponible sur l'internet qu'on peut en faire ce que l'on souhaites. Les contrats d'utilisation sont définis dans les conditions générales (qui sur votre liens ne sont pas présentes). Il faut donc se tourner vers l'éditeur pour connaitres les droits.

    Cordialement,


    Kevin BEAUGRAND, Modis FRANCE
    Merci de bien vouloir "Marquer comme réponse", les réponses qui ont résolu votre problème.

    mardi 9 décembre 2014 13:55
  • Très bien je vous remercie pour votre aide, vous m'avez éclairé sur pas mal de chose déjà !
    J'ai aussi découvert l'outil de debuggage proposé par les navigateurs !

    En ce qui concerne la légalité je vais comme vous me l'avez conseillé, contacter l'éditeur.

    Merci de votre aide !

    mardi 9 décembre 2014 14:26