Journal Grabber HTML

Posté par  (site web personnel) .
Étiquettes :
0
28
mar.
2006
Bonjour,

Vous connaissez certainement tous l'un des frameworks qui font :
données + template => html (ex. smarties, j2EE, Templeet, ...).

Et bien, je cherche l'inverse :
html + template = données

Auriez-vous connaissance d'un tel logiciel/API?

En vous remerkillant,
#18.
  • # XSLT

    Posté par  . Évalué à 5.

    si le html est bien formé c'est assez simple.

    déjà il faut le passer en xhtml (pour que ça soit du xml) grâce a tidy ( http://www.w3.org/People/Raggett/tidy/ )

    ensuite une feuille de style xslt pour extraire les données et les mettre au format que tu veux.(cf comande xsltproc)

    Dam
    • [^] # Re: XSLT

      Posté par  (site web personnel) . Évalué à 1.

      Merci, c'est pas mal du tout et c'est déjà une première piste que je vais explorer.

      Par contre, j'ai peur que cela soit un peu lourd :
      html => JTidy => xslt => jaxb => objet
      En effet, si le site en question change il va me falloir changer la feuille xslt. Je manque un peu d'expérience en xslt d'où mon apriori.

      Je pensais plus à un système à la smarties inversé :
      <body>
      <h1>[TITRE]</h1>
      <a href="[url intéressante]">tralala tsouin tsouin</a>
      .. etc...

      Il suffit alors de récupérer le code d'une page et de le taguer avec un éditeur de texte.

      A+, #18.
      • [^] # Re: XSLT

        Posté par  . Évalué à 2.

        Pourrais tu être plus précis sur ce que tu cherches à faire.
        Si tu veux récupèrer "[TITRE]" ou "[url intéressante]" Je pense que c'est assez simple :))
        Si tu veux récupèrer les titres de niveaux 1, les url des liens, le contenu des paragraphes contenu dans une liste numérotée elle même incluse dans un DIV de class "contenu"... et que le site est en XHTML, un parser XML quelconque et donc, pourquoi pas XSLT conviennent parfaitement.

        Si tu cherches autre chose que le contenu ou les valeurs d'attribut d'éléments XHTML clairements identifiés (par leur nom et ou leur contexte), il faut envisager autre chose. Mais dans ce cas précise ton besoin.
  • # python est ton ami ;-)

    Posté par  (site web personnel) . Évalué à 10.

    je pratique beaucoup ce genre de chose

    et je n'ai jamais trouvé mieux que beautifoul soup :
    http://www.crummy.com/software/BeautifulSoup/examples.html

    C'est une lib python capable de manger un peu prêt n'importe quoi comme sgml like, bien formé ou mal formé ...
    en gros il mange tout ce qui resemble de loin ou de prêt à un langage de balisage

    après t'as des api pour récupérer un peu près tout ;-)

    ça va bien plus vite que la tidy'isation du mauvais html, puis l'écriture du XSLT qui va bien ...
    • [^] # Re: python est ton ami ;-)

      Posté par  . Évalué à 4.

      merci à Laurent GRANIE d'avoir posé cette question et mille merci à manatlan de cette librairie !!!

      beautifoul soup est vraiment excellent, ça me permet de faire l'équivalent d'un rss quand il n'y en a pas !!!!

      en plus c'est super facile, même pour moi qui connait à peine le python !
      • [^] # Re: python est ton ami ;-)

        Posté par  . Évalué à 2.

        C'est clair, que ferait-on sans tous ces commentaires pour nous guider dans la jungle du Logiciel Libre :)
      • [^] # Re: python est ton ami ;-)

        Posté par  . Évalué à 4.

        (petite pub)

        Si ça peut intéresser, j'ai écrit une petite classe Python utilisant Beautifulsoup permettant d'accéder aux informations d'un compte sur le site des Bibliothèques de Paris.

        En gros, sur chaque carte il y a un code barre et le nom de l'utilisateur, ce qui permet d'être identifié sur une page. Mon pti programme va la parser, et va pouvoir te dire ce que tu as loué et autres.

        Si ça peut intéresser ...
        • [^] # Re: python est ton ami ;-)

          Posté par  . Évalué à 2.

          oh oui :]

          c'est tres interessant, si tu pouvais mettre ca online ce serait super :]
      • [^] # Re: python est ton ami ;-)

        Posté par  (site web personnel) . Évalué à 3.

        J'en ai un pas mal aussi ... très pratique pour les fans de ciné ...
        (il faudra aussi que je le mette online un de ces 4)

        Il permet de construire une playlist m3u des flux RTSP des nouvelles bandes annonces dispo sur allociné ...
        A lancer, evidemment, tous les mercredis ;-)

        (bien plus pratique que d'aller fetcher à la mano chaque BA, quand en plus sous linux, c pas toujours evident)

        C'est d'une praticité absolu, et c'est à mettre dans son player avant de matter un divx au salon, pour faire comme au ciné ;-)
  • # use Template::Extract;

    Posté par  (site web personnel) . Évalué à 1.

    En perl, le module Template::Extract semble faire exactement ce que tu cherches : http://search.cpan.org/~autrijus/Template-Extract-0.40/lib/T(...)

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.