CommencerCommencer gratuitement

Transformer une page web en données à l'aide de BeautifulSoup : obtenir les hyperliens

Dans cet exercice, vous découvrirez comment extraire les URLs des hyperliens de la page web de BDFL. Vous deviendrez ainsi un ami proche de la méthode de la soupe find_all().

Cet exercice fait partie du cours

Intermédiaire Importer des données en Python

Afficher le cours

Instructions

  • Utilisez la méthode find_all() pour trouver tous les liens hypertextes dans soup, en vous rappelant que les liens hypertextes sont définis par la balise HTML <a> mais qu'ils sont transmis à find_all() sans crochets d'angle ; stockez le résultat dans la variable a_tags.
  • La variable a_tags est un ensemble de résultats : votre tâche consiste maintenant à l'énumérer, à l'aide d'une boucle for et à imprimer les URLs des hyperliens ; pour ce faire, pour chaque élément link dans a_tags, vous voulez print() link.get('href').

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# Import packages
import requests
from bs4 import BeautifulSoup

# Specify url
url = 'https://www.python.org/~guido/'

# Package the request, send the request and catch the response: r
r = requests.get(url)

# Extracts the response as html: html_doc
html_doc = r.text

# create a BeautifulSoup object from the HTML: soup
soup = BeautifulSoup(html_doc)

# Print the title of Guido's webpage
print(soup.title)

# Find all 'a' tags (which define hyperlinks): a_tags


# Print the URLs to the shell
for ____ in ____:
    ____
Modifier et exécuter le code