Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Work with the Library | Beautiful Soup
Web Scraping with Python

book
Work with the Library

Regular expressions are great for matches but a bit inconvenient. Python provides us with an instrumental library for web scrapping - BeautifulSoup!

BeautifulSoup makes it easy to go through HTML files and extract the parts we are interested in. To import the library, use:

python
from bs4 import BeautifulSoup

To create the first object and start iterating with the website, use the following code:

python
soup = BeautifulSoup(html, "html.parser")

We assign the Beautiful Object to the variable soup with two parameters. The first one is the HTML file we want to parse. The second argument tells which parser to use. "html.parser" corresponds to Python's built-in HTML parser.

BeautifulSoup is highly comfortable to work with since you don't need to write regexes or additional conditions to extract the data from tags.

For instance, let's get the first tag of the type title from the website:

print(soup.title)
1
print(soup.title)
copy

BeautifulSoup can also help to convert websites into DataFrames (using pandas), which are easier to manipulate. We will learn how to do this in the following chapters.

Uppgift

Swipe to start coding

Print the first h1 of the page tag using BeautifulSoup:

  1. Import the needed library.
  2. Create the BeautifulSoup object and assign it to the variable soup.
  3. Print the first h1 tag using the variable soup.

Lösning

# Import libraries
from bs4 import BeautifulSoup
from urllib.request import urlopen

# Open the page
url = "https://codefinity-content-media.s3.eu-west-1.amazonaws.com/18a4e428-1a0f-44c2-a8ad-244cd9c7985e/jesus.html"
page = urlopen(url)
html = page.read().decode("utf-8")

# Create the BeautifulSoup object
soup = BeautifulSoup(html, "html.parser")

# Print the first h1 tag
print(soup.h1)

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 2. Kapitel 1
# Import libraries
from ___ import ___
from urllib.request import urlopen

# Open the page
url = "https://codefinity-content-media.s3.eu-west-1.amazonaws.com/18a4e428-1a0f-44c2-a8ad-244cd9c7985e/jesus.html"
page = urlopen(url)
html = page.read().decode("utf-8")

# Create the BeautifulSoup object
soup = ___(___, "___")

# Print the first h1 tag
___

Fråga AI

expand
ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

some-alt