|
OpenOffice ne dispose pas d'une seule fonction intégrée pour extraire uniquement les titres (H2 et H3) d'un fichier HTML de 100 pages. Vous devrez utiliser une combinaison de fonctionnalités ou un outil externe. Voici quelques approches :
1. Utilisation de "Rechercher et remplacer" d'OpenOffice Writer (limité et fastidieux) :
Cette méthode est réalisable pour un fichier plus petit, mais très peu pratique pour un fichier HTML de 100 pages.
* Importer : Ouvrez le fichier HTML dans OpenOffice Writer. Cela conservera probablement la mise en forme, y compris les titres.
* Rechercher et remplacer (itératif) : Effectuez une opération "Rechercher et remplacer".
* Rechercher : ` .*? ` (Cela trouve tout entre ` ` et ` `balises. Le `.*?` est une expression régulière non gourmande pour éviter de faire correspondre accidentellement plusieurs ` ` rubriques)
* Remplacer : Gardez ce champ vide. Cliquez sur "Remplacer tout". Cela supprimera le contenu mais *pas* le titre. Répétez pour ` Balises `.
* Répéter : Vous devrez ensuite tout supprimer manuellement *sauf* les titres. Cela prend beaucoup de temps pour un fichier volumineux.
2. Utilisation d'OpenOffice Calc et des expressions régulières (plus avancé, mais potentiellement meilleur) :
Cette approche est plus automatisée mais nécessite une certaine familiarité avec les expressions régulières et les fonctions des feuilles de calcul.
* Importer (sous forme de texte) : Ouvrez le fichier HTML dans OpenOffice Calc. Importez-le sous forme de texte brut, et non de HTML, pour éviter les problèmes de formatage. Il sera probablement importé sous la forme d’une seule et très longue cellule.
* Diviser le texte : Utilisez la fonction `TEXTSPLIT` (disponible dans les versions plus récentes d'OpenOffice) pour diviser le texte en lignes en fonction d'un délimiteur comme les retours chariot (`\n`). Cela vous donnera une ligne par ligne de code HTML (environ).
* Expressions régulières (avec `REGEX`) : Utilisez la fonction `REGEX` d'OpenOffice (similaire à `REGEXMATCH` ou `REGEXEXTRACT` d'Excel selon votre version) dans une nouvelle colonne. La formule doit extraire le texte du titre. Un exemple :`=REGEX(A1," (.*?) | (.*?) ";2)`
* Cette formule recherche ` ` ou ` Balises `, capturant le contenu qu'elles contiennent. Le `|` agit comme un opérateur « ou ». Le `(.*?)` capture le contenu de manière non gourmande. Le « 2 » extrait le deuxième groupe de capture ; si seulement ` ` a été trouvé, ce serait une chaîne vide.
* Filtrer et nettoyer : Filtrez les cellules non vides pour supprimer les entrées sans en-tête trouvé. Vous aurez toujours besoin d'un nettoyage manuel pour supprimer les espaces supplémentaires ou les caractères parasites des résultats.
3. Utilisation d'outils externes (recommandé) :
C’est de loin la méthode la plus simple et la plus efficace pour un fichier volumineux. Utilisez un outil de traitement de texte dédié ou un langage de script comme Python :
* Python avec `Beautiful Soup` : Python, avec la bibliothèque « Beautiful Soup », est excellent pour analyser le HTML. Un court script peut extraire uniquement les balises « h2 » et « h3 » et leur contenu. De nombreux tutoriels en ligne montrent comment procéder.
Exemple de script Python :
```python
à partir de bs4 importer BeautifulSoup
avec open("your_100page_html_file.html", "r", encoding="utf-8") comme f :
html =f.read()
soupe =BeautifulSoup(html, "html.parser")
titres =[]
pour h2 dans soup.find_all("h2") :
titres.append(h2.text.strip())
pour h3 dans soup.find_all("h3") :
titres.append(h3.text.strip())
avec open("extracted_headings.txt", "w", encoding="utf-8") comme fichier de sortie :
pour les titres dans les titres :
outfile.write(titre + "\n")
print("Titres extraits dans extract_headings.txt")
```
N'oubliez pas de remplacer « votre_100page_html_file.html » par le nom réel de votre fichier. Vous devrez installer `Beautiful Soup` :`pip install beautifulsoup4`
L’approche Python est fortement recommandée pour son efficacité et sa précision. Les méthodes OpenOffice sont nettement plus lourdes pour un fichier de cette taille.
|