使用 BeautifulSoup 解析 HTML
在這個互動式練習中,你會學到如何使用 BeautifulSoup 套件來「解析」(parse)、「美化」(prettify)以及從 HTML 中「擷取」(extract)資訊。你將從 Guido van Rossum 的個人網頁擷取資料,他是 Python 的 Benevolent Dictator for Life。在接下來的練習中,你會先美化 HTML,然後擷取文字與超連結。
此題要使用的網址為 url = 'https://www.python.org/~guido/'。
本練習屬於課程
Python 資料匯入進階
練習說明
- 從套件
bs4匯入函式BeautifulSoup。 - 將目標網址指派給變數
url。 - 以單一函式
requests.get()打包並送出對該網址的請求,並將回應指派給變數r。 - 使用物件
r的text屬性,將該網頁的 HTML 以字串形式取回;把結果存到變數html_doc。 - 使用
BeautifulSoup()將上述 HTML 建立為 BeautifulSoup 物件soup。 - 在
soup上使用方法prettify(),並將結果指派給pretty_soup。 - 按下送出,將美化後的 HTML 列印到你的終端殼層!
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# Import packages
import requests
from ____ import ____
# Specify url: url
# Package the request, send the request and catch the response: r
# Extracts the response as html: html_doc
# Create a BeautifulSoup object from the HTML: soup
# Prettify the BeautifulSoup object: pretty_soup
# Print the response
print(pretty_soup)