Bash-suppression des balises html

Résolu
Bonjour,

je fais appel à vous car
1) je voudrais supprimer les balises html d'un fichier
2) j'ai donc fais une sortie html de mon fichier mais la mise en forme n'est pas la meme que celle du fichier d'origine, je m'explique : mon fichier est sous forme de liste et en html tout est a la suite séparé par des espaces..

Merci par avance de l'aide que vous voudrez bien m'apporter

3 réponses

Résumé de la discussion

Le souci central est de supprimer les balises HTML d'un fichier en préservant la mise en forme et de compter les mots sans se baser sur les balises. Des conseils évoquent l'utilisation d'outils comme w3m pour extraire le contenu sans balises et des méthodes comme sed pour exclure les éléments HTML. La discussion met aussi en évidence qu'il faut éviter de supprimer les entités < et > avant les balises, puis isoler ces balises pour obtenir le texte brut. En parallèle, des échanges portent sur la mise en forme de la sortie HTML, notamment l'affichage des comptes de mots sous forme de liste et la gestion des sauts.

Bobot (l’IA à votre service)
  1. Maintenant passons au saut a la ligne. Comment faire que dans ma sortie html les comptes des mots soient sous forme de liste?
    1. ça y est j'ai trouvé aussi! | awk '{ printf("%s<br/>\n", $0); }'
      Un grand Merci a toi pour ton aide zipe31 =)
  2. le fichier est sous la forme :
    1804 a
    1750 class
    1364 div
    943 http
    885 fr
    881 n
    828 href
    503 le
    487 du

    et en sortie html :
    1804 a 1750 class 1364 div 943 http 885 fr 881 n 828 href 503 le 487 du

    je voudrais donc que n'apparaissent pas les balises genre class div href ... et que il y ait un saut a la ligne apres chaque mot
    1. Contributeur
      Je doute que ce soit ça que tu veuilles, mais comme j'ai du mal à comprendre ;-\

      $ cat brol
      1804 a
      1750 class
      1364 div
      943 http
      885 fr
      881 n
      828 href
      503 le
      487 du
      
      $ sed 'G;s/class\|div\|href\|http//' brol 
      1804 a
      
      1750 
      
      1364 
      
      943 
      
      885 fr
      
      881 n
      
      828 
      
      503 le
      
      487 du
      
      
      $
    2. non ce n'est pas ce que je veux faire. Je m'explique mieux, en fait mon script doit compter le nombre d'occurrences de chaque mot d'un fichier et le mettre dans un autre nommé par exemple truc.html . mais le problème c'est que ça me compte les balises.
    3. Contributeur
      Je pige rien ;-\

      Il est sous quelle forme ton fichier ? Texte ou html ?
    4. ah non excuse moi le fichier de départ est une page web donc il y a les balises et je voudrais compter les mots sans compter les balises
    5. Contributeur
      Ben alors la solution donnée là devrait t'aider à solutionner ton problème ;-)
  3. Contributeur
    Salut,

    Merci de mettre un exemple de ton fichier ou ici (copier/coller) ou en pièce jointe sur https://www.cjoint.com/ ;-\

    Zen my nuggets ;-)
    Faites un geste pour l'environnement, fermez vos fenêtres et adoptez un manchot.