5 min read

Automatisez l'analyse de contenus avec un script Python et ChatGPT.

Il est possible d’éviter de payer des outils si on apprend à en construire sur-mesure. Ce qui est bien plus souvent rentable, contrairement à ce qu’on peut imaginer !
Automatisez l'analyse de contenus avec un script Python et ChatGPT.

En 2024, l'efficacité prime, c’est un fait. Il faut savoir se débrouiller avec les moyens du bord, surtout lorsqu'il s'agit de répondre aux demandes complexes des clients sans exploser le budget.

Récemment, un client m'a demandé d'analyser l'intégralité des textes de son site web.

Le problème ? Ces textes étaient éparpillés sur une multitude de pages, et je voulais voir le site non pas comme un utilisateur classique, mais tel que les moteurs de recherche le perçoivent.

Quand le DIY devient un outil de performance.

Au lieu de me tourner vers des outils payants et souvent onéreux, j'ai pris la voie du "fait maison".

Pourquoi ? Parce que la solution existait, à condition de savoir s'y prendre.

La mission était claire : extraire, nettoyer, et analyser des textes en français uniquement, à partir d'une multitude de pages web, et le tout de manière automatisée.

Pour y parvenir, j'ai écrit un script Python sur mesure. Ce n'était pas une simple copie d'un bout de code trouvé sur internet. J'ai conçu ce script en itérant plusieurs fois mes demandes avec ChatGPT.

C'était une démarche de piratage intellectuel, où l'idée n'était pas seulement de coder, mais d'utiliser l'intelligence artificielle pour repousser les limites de ce que je pouvais faire moi-même.

Oui, j'utilise Pyto sur iPad & MacOS pour Python !

Un script né de nombreuses itérations.

Ce script, loin d'être parfait dès le départ, a évolué à chaque itération. Il fallait non seulement extraire les URLs d'un sitemap, mais aussi nettoyer le texte en excluant les caractères non pertinents, tout en conservant les accents.

L'étape cruciale de la détection de la langue m'a permis de m'assurer que seuls les textes en français seraient retenus. Le résultat final : une base de données textuelle parfaitement adaptée pour une analyse sémantique poussée.

Mais ce n'était pas tout. J'ai aussi intégré une conversion en Markdown, parce que pourquoi pas ? Après tout, autant transformer le texte en un format plus manipulable pour les futures analyses.

Et aussi parce que j’adore le Markdown. Partout, tout le temps.

L'IA comme complice, pas simple outil.

Le plus intéressant dans cette démarche, c'est l'usage de ChatGPT. J'ai utilisé l'IA non pas comme un outil de recherche ou d'aide à la programmation, mais comme un véritable partenaire de développement.

Chaque fonction du script a été raffinée grâce à des échanges successifs avec l'IA, jusqu'à ce que j'obtienne un outil fiable et performant.

C'est cette approche itérative, mêlant instinct, expérience et innovation, qui m'a permis de construire une solution sur mesure, parfaitement alignée avec les besoins du projet.


Détaillons le fonctionnement du script Python.

Le script créé se concentre sur l'extraction et la préparation des textes présents sur un site web, avec une attention particulière à la langue et à la qualité des données. Voici un résumé de son fonctionnement :

  1. Extraction des URLs depuis un sitemap : la première étape du script consiste à récupérer l'ensemble des URLs d'un site web à partir de son sitemap. Le sitemap est un fichier XML qui liste toutes les pages d'un site, et la fonction get_urls_from_sitemap(sitemap_url) extrait ces URLs pour les analyser.
  2. Nettoyage du texte : une fois les URLs récupérées, le script visite chaque page et extrait le contenu textuel. Ce texte est ensuite nettoyé pour retirer les caractères non valides, tout en conservant les accents, grâce à la fonction clean_text(text).
  3. Détection de la langue : le script vérifie ensuite si le texte est en français à l'aide de la fonction is_french(text). Cette étape est cruciale pour filtrer les contenus non pertinents et se concentrer sur les textes à analyser.
  4. Conversion en Markdown : pour faciliter la manipulation future du texte, le script convertit le contenu HTML des pages en Markdown, un format léger et facile à analyser.

Vers des analyses plus poussées.

Le script constitue une première étape essentielle dans le processus d'analyse. Une fois que les données sont extraites et nettoyées, une multitude d'opportunités s'ouvre pour des analyses plus approfondies :

  1. Manipulation des données : les textes extraits et nettoyés sont maintenant prêts pour des analyses sémantiques. Il est possible d’écrire un autre script pour analyser la densité de certains mots-clés, identifier les thèmes récurrents, ou encore évaluer la cohérence du ton sur l'ensemble du site. Il est également possible d'utiliser ces données pour créer des visualisations qui mettent en évidence la structure du contenu, les points forts et les faiblesses du site.
  2. Détection des failles : avec un script supplémentaire, il est possible d’identifier les failles dans le texte, telles que les incohérences sémantiques, les passages répétitifs ou mal structurés, ainsi que les opportunités manquées en termes de SEO. Un autre aspect pourrait être l'analyse des balises HTML pour s'assurer que les titres, sous-titres, et autres éléments structurants sont utilisés de manière optimale pour le référencement.
  3. Améliorations à apporter : après avoir identifié les failles, le prochain script pourrait suggérer des améliorations, telles que la reformulation de certaines phrases, l'ajout de mots-clés pertinents, ou l'amélioration de la lisibilité du texte. Ce script pourrait également vérifier l'alignement du contenu avec les objectifs de conversion du site, en s'assurant que les appels à l'action sont bien placés et efficaces.

D'ailleurs, il est juste là le script, il n'est pas parfait mais il fait bien ce qu'on lui a demandé :

Analyse de contenus avec un script Python et ChatGPT
Analyse de contenus avec un script Python et ChatGPT - scrap-text.py

De l'artisanat à l'analyse sémantique.

Le fichier généré par ce script a ensuite servi de base pour des analyses sémantiques beaucoup plus sophistiquées. En résolvant un problème initial simple, j'ai pu offrir au client une vision détaillée de son site, telle qu'elle est perçue par les moteurs de recherche.

Cette approche "pirate" a non seulement permis de gagner un temps précieux, mais aussi de contourner la nécessité d'outils payants, tout en répondant exactement aux attentes du client.

Ce projet montre que l'automatisation via Python, combinée à l'intelligence artificielle, peut transformer des tâches complexes en processus efficaces et abordables.

En bricolant un peu et en faisant preuve d'ingéniosité, il est possible de réaliser des analyses approfondies sans recourir à des logiciels coûteux.

Finalement, cette démarche illustre comment on peut hacker le système pour obtenir exactement ce dont on a besoin, sans pour autant suivre les voies traditionnelles et onéreuses.