Extraire un tableau d’un site rapidement en Python avec Pandas

Comment extraire un tableau d’un site web en une seule ligne de code Python ? C’est facile avec cette fonction Pandas !

Si vous travaillez dans la Data Science, vous êtes forcément passé par la librairie Pandas !

C’est la base quand on travaille dans le Big Data. Pandas permet de manipuler facilement des grands ensemble de données.

Mais saviez-vous qu’on pouvait aussi extraire un tableau d’un site web ?

Extraire un tableau d’un site

Pandas n’est pas qu’une simple libraire de manipulation de données.

Effectivement, elle permet aussi de faire du Web Scraping : extraire des informations sur des pages web.

Comment faire ?

Il faut simplement utiliser la fonction read_html() en indiquant l’url de la page web ciblée.

Cette fonction cherche tous les tableaux dans une page, puis créé un DataFrame pour chacun d’entre eux.

Dans l’exemple ci-dessous, on extrait des informations relatifs à l’économie des États-Unis sur Wikipédia :

import pandas as pd

df = pd.read_html("https://en.wikipedia.org/wiki/Economy_of_the_United_States")

Ensuite on peut afficher le résultat :

df[3]

On a bien directement un DataFrame contenant le tableau de la page Wikipédia !

Au fait, si ton objectif est d'apprendre le Deep Learning - j’ai préparé pour toi le Plan d’action pour Maîtriser les Réseaux de neurones.

7 jours de conseils gratuits d’un ingénieur spécialisé en Intelligence Artificielle pour apprendre à maîtriser les réseaux de neurones à partir de zéro :

  • Planifie ton apprentissage
  • Structure tes projets
  • Développe tes algorithmes d’Intelligence Artificielle

J’ai basé ce programme sur des faits scientifiques, des approches éprouvées par des chercheurs mais également mes propres techniques que j'ai conçues au fil de mes expériences dans le domaine du Deep Learning.

Pour y accéder, clique ici :

RECEVOIR MON PLAN D'ACTION

RECEVOIR MON PLAN D'ACTION

À présent, on peut revenir à ce que je mentionnais précédemment.

À savoir – Extraire un tableau d’un site

Remarquez qu’on a indiqué l’index ‘3’ pour afficher le DataFrame.

Effectivement la fonction read_html() cherche tous les tags html <table> et en extrait les informations.

Ainsi, on récupère non pas seulement un tableau, mais bien tous les tableaux contenu dans la page.

Dans notre cas, le tableau qui nous intéressé se trouve à l’index ‘3’.

N’hésitez donc pas à parcourir les DataFrames retourner par la fonction read_html pour comprendre où se situe votre tableau !

Parfois, il arrive que les pages web ne soient pas aux normes ou que les données extraites soient corrompues. Attendez vous donc à faire du nettoyage de données une fois que vous appelez cette fonction.

Heureusement pour nous, dans notre exemple les données était déjà conforme !

C’est parce que dans les sites piliers d’internet, comme Wikipédia, les pages sont pleinement structurés.

La librairie pandas n’est pas la seule qui permet de faire du Web Scraping.

BeautifulSoup est une librairie spécialiseé dans ce domaine et permet d’extraire tout type d’informations sur une page web. Des tableaux, aux données non structurées !

On l’utilise en détail dans cet article où l’on analyse de tweets d’Elon Musk par Intelligence Artificielle.

sources :

Un dernier mot, si tu veux aller plus loin et apprendre le Deep Learning - j’ai préparé pour toi le Plan d’action pour Maîtriser les Réseaux de neurones.

7 jours de conseils gratuits d’un ingénieur spécialisé en Intelligence Artificielle pour apprendre à maîtriser les réseaux de neurones à partir de zéro :

  • Planifie ton apprentissage
  • Structure tes projets
  • Développe tes algorithmes d’Intelligence Artificielle

J’ai basé ce programme sur des faits scientifiques, des approches éprouvées par des chercheurs mais également mes propres techniques que j'ai conçues au fil de mes expériences dans le domaine du Deep Learning.

Pour y accéder, clique ici :

RECEVOIR MON PLAN D'ACTION

RECEVOIR MON PLAN D'ACTION

Tom Keldenich
Tom Keldenich

Ingénieur spécialisé en Intelligence Artificielle et passionné de données !

Fondateur du site Inside Machine Learning

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

This page will not stay online forever

Enter your email to receive for free

The PANE method for Deep Learning

* indicates required

 

You will receive one email per day for 7 days – then you will receive my newsletter.
Your information will never be given to third parties.

You can unsubscribe in 1 click from any of my emails.



Entre ton email pour recevoir gratuitement
la méthode PARÉ pour faire du Deep Learning


Tu recevras un email par jour pendant 7 jours - puis tu recevras ma newsletter.
Tes informations ne seront jamais cédées à des tiers.

Tu peux te désinscrire en 1 clic depuis n'importe lequel de mes emails.