Pythonの`requests`ライブラリは、HTTP通信を簡単に行うことができる便利なライブラリです。この記事では、`requests`を使ってWeb上の画像やビデオをダウンロードする方法を詳しく説明します。具体的なコード例とその解説、応用例を含めています。
目次
基本的なダウンロード方法
`requests`ライブラリを使った基本的な画像やビデオのダウンロード方法を見ていきましょう。
環境のセットアップ
まずは`requests`ライブラリをインストールする必要があります。
# ライブラリをインストール
pip install requests
画像をダウンロードする基本コード
以下のコードは、指定されたURLから画像をダウンロードし、保存する基本的なスクリプトです。
import requests
# 画像のURL
url = "https://example.com/image.jpg"
# 画像をダウンロード
response = requests.get(url)
# バイナリデータとして保存
with open("image.jpg", "wb") as f:
f.write(response.content)
コードの解説
1. `requests.get(url)`でURLからデータを取得します。
2. `response.content`で取得したバイナリデータを保存します。
3. `with open()`を使ってファイルに書き込むことで、画像を保存します。
応用例
動画をダウンロードする
次に、動画のダウンロード方法です。
import requests
# 動画のURL
url = "https://example.com/video.mp4"
# 動画をダウンロード
response = requests.get(url)
# バイナリデータとして保存
with open("video.mp4", "wb") as f:
f.write(response.content)
コードの解説
基本的には画像のダウンロードと同様ですが、保存するファイル形式が”.mp4″になっています。
複数の画像を一括ダウンロードする
複数の画像を一括でダウンロードする方法を考えてみましょう。
import requests
# 画像のURLリスト
url_list = ["https://example.com/image1.jpg", "https://example.com/image2.jpg"]
# 画像をダウンロードして保存
for i, url in enumerate(url_list):
response = requests.get(url)
with open(f"image_{i}.jpg", "wb") as f:
f.write(response.content)
コードの解説
1. `enumerate()`を使ってループのインデックスを取得しています。
2. 各URLから画像をダウンロードし、”image_0.jpg”, “image_1.jpg”という形で保存しています。
まとめ
`requests`ライブラリを使用すると、Pythonで簡単に画像やビデオのダウンロードが行えます。今回は基本的なダウンロード方法から応用例まで幅広く解説しました。この知識を活かして、さまざまなWebスクレイピングやデータ収集の自動化に挑戦してみてください。
コメント