urllib を使用して Python での HTTP リクエストの結果を表示する
前の演習では、GET リクエストをパッケージ化して "https://campus.datacamp.com/courses/1606/4135?ex=2" に送信し、レスポンスを受け取りました。そのレスポンスが http.client.HTTPResponse オブジェクトであることも確認しましたね。では、このレスポンスを使って何ができるのでしょうか。
レスポンスは HTML ページから取得したものなので、HTML を抽出するために読み取ることができます。実際、http.client.HTTPResponse オブジェクトには read() メソッドが用意されています。この演習では、前の演習の成果をもとに、レスポンスから HTML を取り出して表示してみましょう。
この演習はコースの一部です
Pythonによるデータインポート中級
演習の手順
- 前の演習と同様に、
urlopen()関数を使ってリクエストを送信し、レスポンスを変数responseに格納してください。 read()メソッドを使ってレスポンスの内容を抽出し、結果を変数htmlに格納してください。- 文字列
htmlを表示してください。 - 回答を送信すると、上記の処理がすべて実行され、レスポンスもクローズされます。後片付けも忘れずに!
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Import packages
from urllib.request import urlopen, Request
# Specify the url
url = "https://campus.datacamp.com/courses/1606/4135?ex=2"
# This packages the request
request = Request(url)
# Sends the request and catches the response: response
# Extract the response: html
# Print the html
# Be polite and close the response!
response.close()