BeautifulSoup を使用した HTML の解析
この演習では、BeautifulSoupパッケージを使ってHTMLを解析・整形し、情報を抽出する方法を学びます。Pythonの優しい終身の独裁者 であるグイド・ヴァン・ロッサムのウェブページから、データをスクレイピングしましょう。次の演習では、HTMLを整形し、テキストとハイパーリンクを抽出します。
対象のURLは url = 'https://www.python.org/~guido/' です。
この演習はコースの一部です
Pythonによるデータインポート中級
演習の手順
- 関数
BeautifulSoupをパッケージbs4からインポートします。 - 対象のURLを変数
urlに代入します。 requests.get()を使ってURLへのリクエストを送信し、レスポンスを変数rに代入します。- オブジェクト
rのtext属性を使ってウェブページのHTMLを文字列として取得し、変数html_docに格納します。 - 関数
BeautifulSoup()を使って、取得したHTMLから BeautifulSoupオブジェクトsoupを作成します。 prettify()メソッドをsoupに適用し、結果を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)