requestsでhemlデータを取得してみる!はじめのPyhon

環境

requestsライブラリをインストール済み。
環境はざっとMac
Ptthon 3.9

requestsライブラリダウンロード方法(簡易)

Macなら

pip3 install requests

Winなら

pip install requests

をターミナル/コマンドプロンプトで実施でライブラリがダウンロードされます。

Requestsでhtmlを取得

htmlの内容を表示するまでについて書いていきたいと思います。

requestsについて

requestsについてですが、Pythonではrequestsを利用してHTTPリクエストを送信することができます。

requestのメソッドなど(一部)

結構あったので、省略して一部紹介します。太字をここでは使用します。

名前詳細
get()指定されたURLにGETリクエストを送信します
post()指定されたURLにPOSTリクエストを送信します
put()指定されたURLにPUTリクエストを送信します
request()指定されたメソッドのリクエストを指定されたURLに送信します
encodingエンコードを行う(文字コードを指定など)
text取得したページのデータを取得
status_codestatus codeを取得する

htmlを手っ取り早く取得 サンプルコード

説明が大変なのでサンプルコードの中に説明を入れ込んでいます。

# requestsをインポート
import requests
# w3schoolsのサンプルページを取得
getWeb = requests.get('https://w3schools.com/python/demopage.htm')
# w3schoolsのサンプルページのhtmlを書き出します
print(getWeb.text)

取得するwebページを変更する場合、文字化けすることもあります。そんな時は以下の記事も読んでみてください。

ステータスによってhtmlを取得するサンプルコード

せっかくなので、少し違うバージョンの例です。

import requests

url ="https://www.w3schools.com/python/demopage.htm"
response = requests.get(url)

if response.status_code == 200:
print(response.text)
elif response.status_code == 404:
print("Not Found.")

おわり

参考元のReal Pythonではもっといろいろ解説してあったのですが、初心者には追いきれなかったので軽めで諦めました。興味のあるかたは覗いてみると楽しいかもしれません。

参考

Python Requests Module - w3schools.com
Python’s Requests Library (Guide) - Real Python

Python

Posted by Nakamoto