2023-08-25 14:10 Temps de lecture : 14 min

Comment utiliser ChatGPT pour le Web Scraping à l'aide de plugins et d'un interprète de code

Un guide approfondi sur l'extraction de données web avec l'aide de l'Interprète de Code de ChatGPT et ses extensions.

Si l'innovation n'est pas votre tasse de thé, il est probable que vous ayez besoin d'informations préliminaires pour démarrer. Alternativement, vous pourriez être tenté d'examiner ce que font vos concurrents pour recueillir des renseignements utiles. De plus, il existe une myriade de raisons pour lesquelles une personne peut s'intéresser au contenu d'un site web particulier.

L'extraction de données web, ou "web scraping", répond justement à ces besoins.

Il y a plusieurs manières de procéder. Vous pouvez vous abonner à des solutions professionnelles pour extraire des données de sites web d'envergure. Il est également possible que vous ayez besoin d'une configuration spécifique pour un traitement sur site.

Quelle que soit l'option choisie, l'approche peut s'avérer coûteuse, longue et compliquée pour les débutants, surtout lorsqu'il s'agit de récupérer des informations de quelques pages web.

Présentation de ChatGPT pour le "Web Scraping"

Je suppose qu'il n'est plus nécessaire de présenter ChatGPT, n'est-ce pas ?

Pour faire court, ChatGPT est une intelligence artificielle générative qui communique de manière semblable à un humain. Vous disposez d'une interface de conversation pour lui demander de réaliser diverses tâches, telles que la recherche d'informations sur des événements historiques, la rédaction d'essais, la synthèse de textes, la traduction, le codage, etc.

ChatGPT fournit des réponses textuelles. Cependant, des extensions (ou plugins) ChatGPT viennent enrichir ses capacités de plusieurs façons. Nous utiliserons une de ces extensions. De plus, nous ferons appel à son Interprète de Code pour extraire des données de sites web ayant des structures de pages web complexes ou disposant de protocoles anti-scraping actifs.

Il faut savoir que ChatGPT propose des versions gratuites et payantes. Toutefois, l'abonnement payant (actuellement à 20 $ par mois) est requis pour pouvoir utiliser l'extension "Web Scraper" ou son moteur "Interprète de Code".

Les sections suivantes détailleront le processus étape par étape.

Note importante : avant de vous lancer, assurez-vous que le site web concerné autorise l'extraction de contenu. Dans le cas contraire, contactez l'administrateur pour obtenir son autorisation et éviter tout problème juridique.

Extraction de données web à l'aide de l'extension ChatGPT

Connectez-vous à votre Compte OpenAI, placez votre curseur sur GPT-4 (la version payante actuelle) et cliquez sur "Extensions".

Ensuite, cliquez sur "Aucune extension activée", faites défiler vers le bas et sélectionnez "Magasin d'extensions".

Veuillez noter que si une extension est active, une icône la représentant apparaîtra à la place de "Aucune extension activée". Dans ce cas, vous devrez cliquer sur cette icône pour ouvrir le menu déroulant et sélectionner le magasin d'extensions en bas.

Le magasin d'extensions s'ouvrira alors. Recherchez "Scraper" et cliquez sur "Installer".

Sélectionnez cette extension dans l'interface ChatGPT.

Une fois l'extension sélectionnée, il faut demander à ChatGPT, en précisant l'URL concernée et le contenu à extraire.

J'ai testé cela avec quelques sites web. Voici les résultats.

Extraction de contenu d'une publication

Nous sommes une publication axée sur la technologie, et j'ai choisi notre page d'accueil, toptips.fr.com/, pour illustrer cette procédure.

Voici l'instruction que j'ai donnée :

Vérifie cette page web : https://toptips.fr.com/ et prépare un tableau indiquant le titre de l'article, l'auteur, la date de publication et l'extrait pour les 10 meilleurs articles.

Il est également possible de demander à nouveau de convertir les données au format CSV, de les insérer dans un fichier texte avec l'extension .csv et de l'ouvrir dans un tableur tel que MS Excel.

Extraction de données d'une page web d'offres ou de coupons

La section des offres de toptips.fr est l'endroit où nous avons regroupé des offres sur des projets de haute technologie. Que pensez-vous de récupérer chaque transaction sous forme de tableau ?

Prépare une liste des offres depuis cette page web : https://toptips.fr.com/deals/. Présente le résultat sous forme de tableau.

Extraction de contenu de Wikipédia

Résume sous forme de tableau les dernières actualités de la section "À la une" de cette page Wikipédia : https://en.wikipedia.org/wiki/Main_Page

Extraction de données de boutiques en ligne

Enfin, j'ai tenté d'extraire des informations sur des ordinateurs portables sur Amazon.com en appliquant quelques filtres et en transmettant l'URL à ChatGPT. Voici ce que j'ai obtenu :

Le problème est que ce n'est pas un cas isolé. Vous rencontrerez de nombreuses situations similaires où les sites web disposent de mesures anti-scraping. Dans ce cas, vous devrez trouver une solution alternative pour obtenir les données si l'abonnement à des solutions standard d'extraction de données du marché n'est pas une option.

Les sections suivantes présentent une de ces solutions.

Extraction de données web avec l'Interprète de Code de ChatGPT

L'Interprète de Code est un moteur ChatGPT récemment lancé pour répondre aux tâches liées à la programmation. Alors que le moteur par défaut s'appuie fortement sur des réponses textuelles, l'Interprète de Code peut aider à visualiser les résultats, analyser, déboguer et exécuter du code, s'intégrer aux binaires logiciels et bien plus encore dans le domaine de la programmation.

Dans cette méthode, nous allons télécharger le code HTML source, le soumettre à l'Interprète de Code de ChatGPT et procéder à l'extraction des données.

J'ai utilisé cette page pour l'extraction :

Nous commencerons par enregistrer la page web au format HTML. Pour ce faire, allez sur la page web et appuyez sur Ctrl+S.

Nous avons maintenant le fichier à analyser. Examinons l'instruction à donner.

En plus de l'instruction textuelle, vous pouvez constater que je lui ai fourni des exemples d'éléments pour accélérer l'extraction des données. Les structures des pages web d'Amazon étant complexes, sans ces exemples, la tentative d'extraction pourrait échouer ou ne rien donner.

Et l'obtention de ces éléments est relativement simple. Faites un clic droit n'importe où sur la page web concernée et choisissez "Inspecter" dans le menu contextuel.

Cliquez tout d'abord sur l'icône la plus haute (marquée 1). Cela mettra en évidence les détails pendant que vous sélectionnez des éléments sur la page. Sélectionnez ensuite l'élément conteneur pour un produit spécifique.

Assurez-vous de sélectionner le conteneur le plus intérieur. Vous pouvez survoler le bloc avec la souris, et il continuera à être mis en surbrillance. Lorsque vous arrivez au dernier niveau englobant le bloc, vous pouvez cliquer et vous diriger sur le côté droit pour copier la classe div de l'élément.

De la même manière, sélectionnez les exemples pour les autres éléments.

Enfin, téléchargez le code HTML et soumettez une instruction similaire à celle-ci :

Analyse ce code HTML de page web et extrais les titres des ordinateurs portables, leurs prix et les évaluations. Présente les résultats sous forme de tableau dans cette interface de conversation et fournis également les résultats dans un fichier CSV à télécharger.

div class="s-card-container s-overflow-hidden aok-relative puis-include-content-margin puis puis-vfcg1duwvmpo42mcln9ojhiljk s-latency-cf-section s-card-border"
exemple d'élément de titre : span class="a-size-medium a-color-base a-text-normal"
exemple d'élément de prix : span class="a-price-whole"
exemple d'élément d'évaluation : span class="a-size-base puis-bold-weight-text"

Cela prendra un certain temps pendant que l'Interprète de Code de ChatGPT fait son travail. Vous aurez des informations détaillées, tandis que l'ensemble sera inclus dans un fichier CSV intégré.

Vous remarquerez que le tableau contient quelques entrées qui ne sont pas présentes sur la page web d'origine, notamment au début. Dans ce cas, il est nécessaire de revérifier et de nettoyer les données pour détecter les redondances.

Si tel est le cas, vous pouvez demander à ChatGPT de fournir un fichier CSV propre.

Conclusion

ChatGPT peut réaliser de nombreuses tâches, et l'extraction de données web de base en fait partie. Certes, cela pourrait ne pas convenir à ceux qui extraient des données de centaines de pages. Néanmoins, cela vous permettra de démarrer dans la bonne direction et sera idéal pour des sessions d'extraction de courte durée.

Dans ce guide, nous avons utilisé une de ses extensions d'extraction et l'Interprète de Code. Bien que les extensions fonctionnent sur de nombreux sites web standard, la deuxième méthode concerne les structures de pages web personnalisées ou lorsque la page comporte des éléments dynamiques (défilement infini, en savoir plus, etc.).

Et pour réitérer, veuillez lire les conditions d'utilisation du site web concerné avant de procéder à l'extraction.

PS : Découvrez ces solutions d'extraction de données dans le cloud et notre propre API d'extraction de données toptips.fr.

Auteur
France

Rédacteur tech, guides pratiques et astuces numériques.