Comment utiliser la fonction IMPORTHTML sur Google Sheets pour récupérer / extraire des données HTML ? Dans ce tutoriel, nous allons voir comment extraire un tableau HTML ou une liste à puces et comment nous pouvons rapidement trouver sa position pour indiquer l’élément que l’on recherche précisément.

Je m’abonne à la chaîne NumelionWeb

Sommaire :

Si vous cherchez à récupérer des données sur une page Web, vous pouvez utiliser la fonction IMPORTHTML sur Google Sheets. Cette fonction est très pratique pour extraire des listes ou des tableaux de données à partir d’un site Web spécifique. Dans cet article, nous vous montrerons comment utiliser cette fonction et comment la personnaliser pour obtenir les résultats souhaités.

Les paramètres de la fonction IMPORTHTML

La fonction IMPORTHTML sur Google Sheets nécessite trois paramètres. Tout d’abord, vous devez indiquer l’URL du site Web sur lequel vous souhaitez récupérer les données. Ensuite, vous devez spécifier si vous souhaitez extraire une liste ou un tableau.

Enfin, vous devez indiquer la position de la liste ou du tableau sur la page Web en question. Si plusieurs tables ou listes sont présentes sur la page, vous devez spécifier l’index du tableau ou de la liste que vous souhaitez récupérer.

=IMPORTHTML("URL";"Table ou List";Position de l'élément dans la page)

Avant de commencer à utiliser la fonction IMPORTHTML, il est important de comprendre ses paramètres. La fonction IMPORTHTML prend trois paramètres :

  • L’URL de la page web que vous souhaitez extraire
  • Le type d’élément que vous souhaitez extraire (tableau ou liste à puces)
  • La position de l’élément que vous souhaitez extraire dans la page web

Le premier paramètre est l’URL de la page web que vous souhaitez extraire. Vous pouvez copier et coller l’URL de la page dans la cellule où vous souhaitez afficher les données.

Le deuxième paramètre est le type d’élément que vous souhaitez extraire. Vous pouvez choisir entre un tableau ou une liste à puces en utilisant les mots-clés « table » ou « list ».

Le troisième paramètre est la position de l’élément que vous souhaitez extraire dans la page web. Si la page contient plusieurs tableaux ou listes à puces, vous devez spécifier la position de l’élément que vous souhaitez extraire. La position est un nombre qui représente l’ordre de l’élément dans la page. Par exemple, si vous souhaitez extraire le deuxième tableau de la page, vous devez spécifier « 2 » comme position.

Fonction IMPORTHTML avec Google Sheets pour le webscraping

Extraire un tableau HTML avec IMPORTHTML

Dans cet exemple, nous allons extraire un tableau HTML à partir d’une page Web. Tout d’abord, copiez l’URL de la page que vous souhaitez extraire. Ensuite, créez une nouvelle feuille Google Sheet et saisissez la formule suivante dans une cellule : =IMPORTHTML(« URL »; « table »; 1).

L’URL est l’adresse de la page Web que vous souhaitez extraire, « table » indique que vous souhaitez extraire un tableau, et « 1 » est l’index du tableau que vous souhaitez extraire. Appuyez sur « Entrée » et les données de la table s’affichent dans la cellule.

La fonction IMPORTHTML est particulièrement utile pour extraire des tableaux à partir de pages web. Pour extraire un tableau, vous devez suivre les étapes suivantes :

  • Copiez l’URL de la page web contenant le tableau que vous souhaitez extraire
  • Dans Google Sheets, ouvrez une nouvelle feuille de calcul
  • Dans la cellule où vous souhaitez afficher le tableau, entrez la formule suivante : =IMPORTHTML(« URL »; »table »;1)
  • Remplacez « URL » par l’URL de la page web que vous avez copié
  • Remplacez « table » par le mot-clé « table », qui indique que vous souhaitez extraire un tableau
  • Remplacez « 1 » par la position de l’élément que vous souhaitez extraire (dans ce cas, le premier tableau de la page)

La fonction IMPORTHTML va maintenant extraire le tableau de la page web et l’afficher dans la cellule que vous avez spécifiée.

Récupérer un tableau en HTML avec IMPORTHTML de Google Sheets

Extraire une liste à puces HTML

Si vous souhaitez extraire une liste HTML, vous pouvez utiliser la même méthode. La seule différence est que vous devez modifier le deuxième paramètre de la formule pour spécifier que vous souhaitez extraire une liste plutôt qu’un tableau. Par exemple, la formule pour extraire une liste HTML serait la suivante : =IMPORTHTML(« URL »; « list »; 1).

La fonction IMPORTHTML est aussi utile pour extraire des listes à puces à partir de pages web. Pour extraire notre liste, il faut utiliser les étapes suivantes :

  • Copiez l’URL de la page web contenant la ou les listes à puces HTML à récupérer
  • Créer une nouvelle feuille Google Sheets dans Google Drive
  • Dans la feuille, sélectionner la cellule où vous souhaitez afficher le résultat de l’extraction de la liste et indiquer la formule suivante : =IMPORTHTML(« URL »; »table »;1)
  • Remplacez « URL » par l’URL de la page HTML que vous souhaitez utiliser
  • Utiliser le mot « list » comme indiqué
  • Remplacez « 1 » par la position de la liste que vous souhaitez extraire (dans ce cas, la première liste de la page)

La fonction IMPORTHTML va maintenant extraire le tableau de la page web et l’afficher dans la cellule que vous avez spécifiée.

Récupérer une liste à puce en HTML avec IMPORTHTML de Google Sheets

Trouver la position d’un tableau ou d’une liste à puce HTML

Si vous ne connaissez pas la position d’un tableau ou d’une liste sur une page Web, vous pouvez utiliser une astuce simple pour la trouver. Tout d’abord, copiez l’URL de la page Web que vous souhaitez extraire.

Pour cela, on peut utiliser le chemin XPath. Il faut ouvrir l’outil de développement de votre navigateur. Généralement, nous allons utiliser la touche F12 qui permet d’afficher l’outil. Dans ce dernier, on se positionne dans l’onglet « Eléments ». Ensuite, il faut utiliser le raccourci clavier « CTRL + F » pour faire apparaître un champ permettant d’insérer ce que l’on recherche.

En l’occurrence ici, on recherche soit un tableau HTML soit une liste. Pour trouver le premier élément (un tableau HTML) on va utiliser en chemin « //table ». Cela va nous ressortir le nombre de tableaux HTML dans la page et on naviguer jusqu’à celui qui nous intéresse pour obtenir sa position. Il ne bous reste plus qu’a utiliser sa position comme index dans la formule IMPORTHTML comme nous l’avons vu précédemment.

Pour une liste à puce HTML, il faut cette fois utiliser « //ul ». C’est ce qui permet de trouver les liste à puces dans une page HTML, car c’est ce qui permet de les créer. Vous pouvez d’ailleurs retrouver mon guide sur le code HTML pour vous aider sur ce point.

Trouver la position d'un tableau HTML dans une page

Conclusion

La fonction IMPORTHTML dans Google Sheets est utile pour extraire des données à partir de pages Web, donc réaliser du webscraping, même si cela reste basique. En effet, en utilisant cette fonction, vous pouvez facilement récupérer des tableaux et des listes HTML à partir de sites Web, mais on ne pourra pas aller plus loin. C’est donc parfait pour ce cas, sinon on devra utiliser une autre fonction qui est IMPORTXML et que nous verrons dans un autre article.

Pour revenir à IMPROTHML, en utilisant les paramètres appropriés avec notre formule Google Sheets, nous pouvons personnaliser la fonction pour obtenir les résultats voulues. Avec cette astuce simple pour trouver la position d’un tableau ou d’une liste sur une page Web, vous pouvez économiser beaucoup de temps et d’effort dans la création de vos tableurs.

Comme nous l’avons vu dans la vidéo, il est possible de passer d’une page à une autre pour obtenir des données extraites à la volée et par exemple actualise des graphiques. Ici, je le fais pour une valeur économique, mais le champs des possibles n’a pas de limite.