procédure pour récupérer données web | ||
---|---|---|
Inscription: 06/05/2010
Messages:
5
Système d'exploitation: PC Version Excel utilisée: Excel 2007 |
Posté le : 07-05-2010 17h40
Bonjour
Etant passionné par les courses hippiques et ayant des connaissances trés limitées en informatique,pourriez-vous m'indiquer une procédure simple pour récupérer des données relatives au palmares des chevaux et ce d'une maniere automatique du site www.france-galop.com . Actuellement,j'ai recours a la procédure manuelle : données------->données externes---->a partir du site web..etc qui me prend énormément de temps puisque j'importe les stats de 30 chevaux en moyenne(2 a 3 courses par réunion) qui se trouvent sur des pages web différentes. Merci pour votre aide. "Aux courses, les petits tuyaux font les grandes misères."
Michel Audiard |
|
|
Re: procédure pour récupérer données web | ||
---|---|---|
Inscription: 18/05/2006
De Saône-et-Loire (71)
Messages:
1539
Système d'exploitation: PC Version Excel utilisée: 97, 2000, 2002, 2003, 2007, 2010, 2013, 2016 et 365 |
Posté le : 07-05-2010 20h27
Bonsoir bassatine et bienvenue sur XLpages.com
Bonsoir le Forum, Dans le lien fourni, une liste déroulante avec 18 chevaux. Faut-il récupérer les données de ces 18 chevaux ? Comment présenter l'ensemble ? Un onglet par cheval ou les tableaux les uns en dessous des autres ? Par ailleurs, juste une précision pour la suite : il doit être possible de réaliser quelque chose de simple pour te dépanner ou te mettre sur la voie. Mais ici, ne t'attends pas à ce qu'on fasse au final une application complète "clé en main", ce n'est pas l'objet de ce forum. Si tu as compris ce que je précise là et si tu es d'accord, alors je suis partant pour t'aider... Cordialement, Didier_mDF
Le Webmaster La réponse vous satisfait ? Merci de revenir solder le sujet en [résolu], voir ce lien |
|
|
Re: procédure pour récupérer données web | ||
---|---|---|
Inscription: 06/05/2010
Messages:
5
Système d'exploitation: PC Version Excel utilisée: Excel 2007 |
Posté le : 08-05-2010 00h35
Bonsoir myDearFriend!
Merci pour l'interet que tu as porté a ma demande d'aide. Pour chaque cheval,j'aimerais récupérer le nom ainsi que le tableau renfermant le résumé de sa carriere.Les tableaux seront,si c'est possible, présentés les uns en dessous des autres.(voir piece jointe) Je ne m'attends pas a une application toute faite,mais plutot a des indications opérationnelles pour en rendre la réalisation abordable. Merci pour tout. "Aux courses, les petits tuyaux font les grandes misères."
Michel Audiard |
|
|
Re: procédure pour récupérer données web | ||
---|---|---|
Inscription: 18/05/2006
De Saône-et-Loire (71)
Messages:
1539
Système d'exploitation: PC Version Excel utilisée: 97, 2000, 2002, 2003, 2007, 2010, 2013, 2016 et 365 |
Posté le : 08-05-2010 15h21
Bonjour bassatine, le Forum,
Tu dis avoir des connaissances informatiques très limitées aussi je doute qu'en te donnant simplement quelques indications (aussi opérationnelles soient-elles), tu puisses te débrouiller... Ou alors, tu es un génie qui s'ignore Je vais donc essayer de te mettre sur la voie et peut-être te donner envie d'approfondir le sujet car tu verras, Excel et VBA ça peut être passionnant aussi... Dans la pièce jointe, tu trouveras donc peut-être une réponse à ta demande. Après avoir ouvert le classeur en activant les macros, tu cliques sur le bouton "Mise à jour" et tu patientes quelques secondes... Bien sûr, on peut faire plus court et on peut certainement faire plus rapide, mais j'ai préféré privilégier la solution la plus abordable pour toi il m'a semblé. Tout d'abord, l'outil de base pour développer avec VBA dans Excel, s'appelle l'"enregistreur de macro" (pour plus d'infos et faire connaissance avec cet outil, je te conseille la consultation de CE LIEN). En utilisant donc l'enregistreur de macro, je suis parti de ta procédure manuelle et l'ai suivie comme tu le fais. A terme, j'ai obtenu le code VBA suivant : Sub Macro1() Je suis donc parti de ce code extrait de l'enregistreur et j'ai ensuite "brodé" un peu avec mes connaissances VBA (je ne suis pas un spécialiste Requête Web cela dit !). Par ailleurs, pour ce type de procédure, il convient aussi d'avoir quelques notions HTML : en premier lieu, j'ai décortiqué un peu le code HTML de ta page web pour repérer les seules balises "Table" sur lesquelles m'intéresser. C'est de là par exemple que j'en tire les noms comme "ctl00$cphContenuCentral$navigation_cheval$ddlChevaux" qui peuvent paraitre un peu barbare à première vue... Mais c'est tout bonnement le nom qu'a choisi le concepteur de cette page Web. Dans le classeur joint, j'ai utilisé le code complet ci-après : Option Explicit Je ne vais pas pouvoir t'expliquer en détail toute ma démarche, mais tu trouveras en couleur verte des commentaires que j'ai laissé pour que tu puisses te situer un peu dans ce code. En espérant t'avoir un peu dépanné... Cordialement, Didier_mDF
Le Webmaster La réponse vous satisfait ? Merci de revenir solder le sujet en [résolu], voir ce lien |
|
|
Re: procédure pour récupérer données web | ||
---|---|---|
Inscription: 06/05/2010
Messages:
5
Système d'exploitation: PC Version Excel utilisée: Excel 2007 |
Posté le : 08-05-2010 16h38
Bonjour myDearFriend!
Je tiens tout d'abord a t'exprimer ma reconnaissance et ma gratitude pour ton aide si précieuse. Le fichier joint répond exactement a mes besoins et les explications qui l'accompagnent sont claires et précises . Bien que je sois conscient du long parcours qui m'attend pour maitriser tout ca,je ne me décourage pas,bien au contraire,je vais essayer d'acquérir les connaissances de base me permettant une meilleure compréhension du code VBA. Merci myDearFriend!
Edité par bassatine le 08/05/2010 19:44:16
"Aux courses, les petits tuyaux font les grandes misères."
Michel Audiard |
|
|
Re: procédure pour récupérer données web | ||
---|---|---|
Inscription: 28/02/2019
De France
Messages:
1
Système d'exploitation: PC Version Excel utilisée: Excel 2013 |
Posté le : 28-02-2019 14h36
Bonjour, je suis conscient que ce sujet date mais il est je pense celui qui m'a aidé le plus jusqu'ici. Pour faire simple, je travaille avec un outil qui génère des bilans d'analyses sous format HTML, en voici un exemple de la partie intéressante DOM :
<table class="identification" width="740" cellspacing="0"> <tbody><tr class="entete"> <th class="" colspan="4" rowspan="1"><span class="strong title_commentaire">Détection du défaut</span></th> </tr> <tr class="sous_entete"> <th class="">Nom de l'OMT</th> <th class="res_mise_liaison">Résultat de la mise en liaison</th> <th class="res_ild">Résultat(s) du/des détecteur(s) de défaut</th> <th class="">Information(s) complémentaire(s)</th> </tr> <tr class=""> <td class="">138G</td> <td class=""><span class="textVert">OK</span></td> <td class="">-----</td> <td class="">-----</td> </tr> <tr class=""> <td class="">050E</td> <td class=""><span class="textVert">OK</span></td> <td class="">-----</td> <td class="">-----</td> </tr> <tr class=""> <td class="">084C</td> <td class=""><span class="textRouge">KO : LIAISON OMT</span></td> <td class="">-----</td> <td class="">-----</td> </tr> </tbody></table> <table class="identification" width="740" cellspacing="0"> <tbody><tr class="entete"> <th class="" colspan="7" rowspan="1">Séquence d'isolement</th> </tr> <tr class="sous_entete"> <th class="">Date Heure</th> <th class="">Poste</th> <th class="">PA OMT</th> <th class="">Libellé</th> <th class="">Manoeuvre</th> <th class="" colspan="2" rowspan="1">Résultat</th> </tr> <tr class=""> <td class="">23/02/2019 23:16:35</td> <td class="">IROU-PN</td> <td class="">138G</td> <td class="">INTER 1</td> <td class="">TC OUV </td> <td class="" colspan="2" rowspan="1"><span class="textVert">OK</span></td> </tr> <tr class=""> <td class="">23/02/2019 23:17:02</td> <td class="">IROU-PN</td> <td class="">138G</td> <td class="">INTER 1</td> <td class="">OUV </td> <td class="" colspan="2" rowspan="1"><span class="textVert">OK</span></td> </tr> </tbody></table> <table class="identification" width="740" cellspacing="0"> <tbody><tr class="entete"> <th class="bordure_table" colspan="1" rowspan="14" width="4%">P<br>O<br>C<br>H<br>E<br> <br>A<br> <br>R<br>E<br>P<br>R<br>E<br>N<br>D<br>R<br>E<br></th> <th class="" colspan="3" rowspan="1">Encadrant(s)</th> <th class="" colspan="3" rowspan="1">Information(s) Complémentaire(s)</th> </tr> <tr class=""> <td class="zone_nature" colspan="3" rowspan="1"><ul class="list_a_puce"> <li><img src="../images/puce.png" alt="->" width="14" height="14"> <a class="lienSitr" href="?type=0&id=232.0.17156931.CT#lienSitr">IROU-PN 138G : Direction 138G</a></li> <li><img src="../images/puce.png" alt="->" width="14" height="14"> <a class="lienSitr" href="?type=0&id=220.0.14503575.CT#lienSitr">IROU-PN 084C : Direction 084C</a></li> </ul> </td> <td class="zone_nature" colspan="3" rowspan="1"><span class="size_text_img"><strong class="">Puissance à reprendre : </strong> 585 kW</span><br><br> <span class="size_text_img"><strong class="">Nombre de clients : </strong> 399</span><br><br> <span class="size_text_img"><strong class="">Pas de présence producteur. </strong> </span></td> </tr> <tr class="entete"> <th class="" colspan="6" rowspan="1">Plan(s) de reprise possible(s)</th> </tr> <tr class=""> <td class="celluce_contenant_table" colspan="6" rowspan="1"><table class="table_bouclage" width="" cellspacing="0"> <tbody><tr class=""> <td class="bouclage" colspan="1" rowspan="2"><strong class=""><a class="lienSitr" href="?type=0&id=232.0.17278911.CT#lienSitr">15MURO</a> (IROU-PN)</strong> <br>IROU-PN 084C<br>Direction <a class="lienSitr" href="?type=0&id=220.0.14503575.CT#lienSitr">084C</a></td> <td class="resultat" colspan="1" rowspan="2"><span class="textVert">OK</span></td> <td class=""><strong class="">Priorité BERE : </strong> 1</td> <td class=""><strong class="">Imax : </strong> 260 A <br><strong class="">Icalculé : </strong> 76 A</td> <td class=""><strong class="">PNominaleTransfo : </strong> 36,0 MVA <br><strong class="">PRéelleTransfo : </strong> 8,829 MVA</td> </tr> <tr class=""> <td class="" colspan="3" rowspan="1"><ul class="list_a_puce_commentaire"> <li> Les données renseignées sont insuffisantes pour le V2.</li> </ul> </td> </tr> </tbody></table> </td> </tr> <tr class="entete"> <th class="" colspan="6" rowspan="1">Plan retenu</th> </tr> <tr class=""> <td class="important" colspan="3" rowspan="1"><span class="textVert"><a class="lienSitr" href="?type=0&id=232.0.17278911.CT#lienSitr"><span class="textVert">15MURO</span></a> (IROU-PN) : <a class="lienSitr" href="?type=0&id=220.0.14503575.CT#lienSitr"><span class="textVert">IROU-PN 084C - Direction 084C</span></a></span></td> <td class="" colspan="3" rowspan="1"><ul class="list_a_puce"> <li><img src="../images/puce.png" alt="->" width="14" height="14"> Priorisation en fonction des contraintes du BERE.</li> </ul> </td> </tr> <tr class="entete"> <th class="" colspan="6" rowspan="1">Manoeuvre(s) pour la reprise</th> </tr> <tr class="sous_entete"> <th class="">Date Heure</th> <th class="">Poste</th> <th class="">Tranche</th> <th class="">Libellé</th> <th class="">Etat</th> <th class="">Résultat</th> </tr> <tr class=""> <td class="">23/02/2019 23:17:08</td> <td class="">IROU-PN</td> <td class="">15MURO</td> <td class="">MEHS RRL</td> <td class="">TC HS </td> <td class=""><span class="textVert">OK</span></td> </tr> <tr class=""> <td class="">23/02/2019 23:17:08</td> <td class="">IROU-PN</td> <td class="">15MURO</td> <td class="">MEHS RRL</td> <td class="">HS </td> <td class=""><span class="textVert">OK</span></td> </tr> <tr class=""> <td class="">23/02/2019 23:17:08</td> <td class="">IROU-PN</td> <td class="">15MURO</td> <td class="">MEHS RRL</td> <td class="">TC HS </td> <td class=""><span class="textVert">OK</span></td> </tr> <tr class=""> <td class="">23/02/2019 23:17:08</td> <td class="">IROU-PN</td> <td class="">15MURO</td> <td class="">MEHS RRL</td> <td class="">HS </td> <td class=""><span class="textVert">OK</span></td> </tr> <tr class=""> <td class="">---</td> <td class="">IROU-PN</td> <td class="">084C</td> <td class="">INTER 1</td> <td class="">TC FER </td> <td class=""><span class="textRouge">KO : ANOMALIE TC</span></td> </tr> <tr class=""> <td class="">---</td> <td class="">IROU-PN</td> <td class="">084C</td> <td class="">INTER 1</td> <td class="">TC FER </td> <td class=""><span class="textRouge">KO : ANOMALIE TC</span></td> </tr> </tbody></table>
(c'est très moche désolé... :/ )
Mon travail consiste à exploiter ces données et à en extraire à l'aide d'une macro vba (nous travaillons uniquement sur excel), les contenus des cases des tableaux dont le texte est en rouge (thermes surlignés en rouge dans le DOM). Par exemple dans le tableau "Détection du défaut" j'ai seulement besoin d'extraire le "KO : LIAISON OMT" dans une cellule excel. Je débute dans le langage vba et malgré des heures de lecture de pages d'aides sur internet je n'arrive pas à adapter des fonctions telles que split ou query. Ma première solution était une extraction complète du bilan d'analyse sur une feuille excel puis de retenir le texte de couleur rouge, mais tous les textes sont extraits en noir. Je ne cherche pas à ce que le travail soit fait à ma place mais plutôt à essayer de comprendre comment je dois aborder le problème. Peut-être qu'en fin de compte je ne dois pas me pencher sur le critère "couleur" mais plutôt sur la chaine de caractère en elle-même lorsqu'elle contient "KO" mais je ne sais pas comment faire sur vba.
Merci pour votre aide et votre temps. Cordialement, François-Joseph.
|
|
|
Re: procédure pour récupérer données web | ||
---|---|---|
Inscription: 08/09/2018
De Alger
Messages:
12
Système d'exploitation: PC Version Excel utilisée: 2010 |
Posté le : 29-03-2019 11h28
Salut, avez vu réussie a trouver une solution ?
_________________________________________________
|
|
|