1. #1
    Membre du Club
    Profil pro
    Inscrit en
    mai 2008
    Messages
    184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mai 2008
    Messages : 184
    Points : 58
    Points
    58

    Par défaut parsing d'une page html

    Bonjour, je ne sais pas si c'est la bonne section pardonnez mi d'avance.
    Alors voila je ne sais pas comment m'y prendre mais j'aimerais à partir d'une page html extraire des parties.
    dans ce code html j'aimerais récupérer le nom et prénom dans un fichier text mais je n'y arrive pas
    sachant que sur une même ligne il peut y avoir plusieurs nom et prenom dans l'exemple vous avez Toto TATA et Titi TETE
    le code n'est pas viable c'est juste pour l'exemple
    j'ai utiliser du python avec librairy beautifoul soup mais sans sucès car je suis débutant en langage python
    j'ai essayé de copier le code dans un fichier texte et utilisé les commandes linux awk sed et grep mais je n'arriva pas à ce que je veux
    Merci de m'orienter SVP
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
     <!DOCTYPE html>
    <html lang="fr">
      <body class="toto">
        <div id="bloc"></div>
     
        <div id="menu">
        <div id="appli" class="appliskeleton">
      <div class="top-bar"></div>
      <div class="content">
        <div class="load">
          <div class="image"></div>
          <div class="loading-bar">
            <div class="blue"></div>
          </div>
        </div>
      </div>
    </div>
     
     
    <script src="https://myscript" ></script>
     
     
    <code style="display: none" id="19543">
      {"sometext&quot:""$sometext":["sometext","picture"],"sometext":"}
    </code>
     
    <img src="data:image/gif;base64,R0lGODlhAQABAQAAAAAAAP///yH5BAEAAAAALAAAHAABAAEAAAIBRAA7" style="display: none" >
      {"sometext&quot:""$sometext":["sometext","picture"],"sometext":"}
    </code>
    <code style="display: none" id="datalet-bpr-guid-19546">
      {"request":"api/search/17","status":200,"body":"body"}
    </code>
    <img src="data:image/gif;base64,R0lGODlhAQABAQAAAAAAAP///yH5BAEAAAAALAAAHAABAAEAAAIBRAA7" style="display: none" >
      {"sometext&quot:""$sometext":["sometext","picture"],"sometext":"}
    </code>
     
    <img src="data:image/gif;base64,R0lGODlhAQABAQAAAAAAAP///yH5BAEAAAAALAAAHAABAAEAAAIBRAA7" style="display: none" >
      {"sometext&quot:""$sometext":["sometext","picture"],"sometext":"}
    </code>
     
    <img src="data:image/gif;base64,R0lGODlhAQABAQAAAAAAAP///yH5BAEAAAAALAAAHAABAAEAAAIBRAA7" style="display: none" >
      {"sometext&quot:"Name":"Toto","surName":"TATA","$sometext":["sometext","picture"],"sometext":"{"Name":"Titi","surName":"TETE","$sometext":["sometext","picture"],"sometext":"
     
    </code>
    <code style="display: none">
      {"request":"api/search/17","status":200,"body":"body"}
    </code>
     
     
    <img src="data:image/gif;base64,R0lGODlhAQABAQAAAAAAAP///yH5BAEAAAAALAAAHAABAAEAAAIBRAA7" style="display: none" >
     
     
        <div id="notification" class="hidden" role="fr" ></div>
      </body>
    </html>

  2. #2
    Membre chevronné Avatar de CosmoKnacki
    Homme Profil pro
    Inscrit en
    mars 2009
    Messages
    1 002
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : mars 2009
    Messages : 1 002
    Points : 1 838
    Points
    1 838

    Par défaut

    je ne sais pas si c'est la bonne section
    Je ne pense pas, moi j'aurais plutôt posté ça dans la section en rapport avec l'outil utilisé (BeautifulSoup) donc dans la section Python. Peut-être qu'une bonne âme voudra bien déplacer ton post.

    le code n'est pas viable c'est juste pour l'exemple
    Dans ce cas ce n'est pas un bon exemple. Si tu ne fournis pas un exemple sur lequel on puisse travailler, ça ne simplifiera la tâche de personne.

    BeautifulSoup est le bon outil, il faut continuer dans cette voie, sed/awk ne sont pas appropriés pour parser du html.
    Si tu as du mal avec BeautifulSoup, avance pas à pas et affiche ce que tu obtiens pour voir où tu en es (en fait c'est comme pour tout). Si tu te retrouves bloqué, montre ton code, mais encore une fois uniquement en fournissant un exemple html exploitable!

    BeautifulSoup ne te permettra que d'extraire le JSON contenant les données qui t'intéressent, mais pas plus. Ensuite c'est au module json de prendre le relais. Il pourra le décoder pour ensuite accéder aux éléments que tu cherches.
    "Ça s'laisse boire!" - Bérénice du Syphon

  3. #3
    Modérateur

    Profil pro
    Inscrit en
    septembre 2004
    Messages
    11 252
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : septembre 2004
    Messages : 11 252
    Points : 19 047
    Points
    19 047

    Par défaut

    A mon avis cela peut se faire dans n'importe quel langage... Ce qu'il faut c'est en prendre un dans lequel on est pas débutant !

    Quels langages de programmation connais-tu ?
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    mai 2008
    Messages
    184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mai 2008
    Messages : 184
    Points : 58
    Points
    58

    Par défaut

    Quels langages de programmation connais-tu ?
    en python je pense que ce sera le plus adapté pour moi.

    Dans ce cas ce n'est pas un bon exemple. Si tu ne fournis pas un exemple sur lequel on puisse travailler, ça ne simplifiera la tâche de personne.
    il sert d'exemple mais il est proche de la structure initial pour moi cela ne doit pas poser de problème mais merci quand même
    je vais tenter avec python et revenir au besoin.
    mais à titre d'info si vous aviez besoin de parser ce genre de fichier vous aurez fait comment.

  5. #5
    Membre chevronné Avatar de CosmoKnacki
    Homme Profil pro
    Inscrit en
    mars 2009
    Messages
    1 002
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : mars 2009
    Messages : 1 002
    Points : 1 838
    Points
    1 838

    Par défaut

    il sert d'exemple mais il est proche de la structure initial
    Non, il ne sert à rien. Il n'est pas indenté (donc pour pouvoir se faire une idée de la structure, il faut se taper l'indentation soit même) et il comporte 5 balises orphelines (donc impossible connaître la structure au final). Pareil pour le JSON qui comporte des erreurs et qui est tronqué.

    Rien ne t'oblige à poster ton fichier intégralement s'il est trop long ou si tu préfères ne pas afficher certaines informations, mais dans ce cas le minimum vital c'est de montrer une structure claire, sans aucune ambiguïté. Pour illustrer mon propos, avec le code que tu as fourni, il est impossible de dire si par exemple tes balises code sont oui ou non des descendantes de <div id="menu">. De même il sera par la suite impossible de parser le Json si celui-ci est mal formé.
    "Ça s'laisse boire!" - Bérénice du Syphon

Discussions similaires

  1. [VB6] Imprimer directement une page html
    Par Debra dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 23/04/2004, 12h24
  2. Afficher une page html
    Par Nicky dans le forum C++Builder
    Réponses: 6
    Dernier message: 14/04/2004, 15h36
  3. Inserer une page HTML comme une boite!
    Par thief dans le forum MFC
    Réponses: 4
    Dernier message: 16/01/2004, 22h13
  4. [VB.Net] Comment generer une page html dynamiquement ?
    Par Anonymous dans le forum ASP.NET
    Réponses: 3
    Dernier message: 13/03/2003, 11h22
  5. [CR] Tranfert de formulaire a travers une page HTMl
    Par LIEU dans le forum SAP Crystal Reports
    Réponses: 3
    Dernier message: 12/09/2002, 09h37

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