\

PythonのHTTPクライアントライブラリであるrequestsを利用して、ファイルダウンロードを行う方法について説明します。

まず、requestsget()メソッドを使用して、ファイルダウンロードのURLにアクセスします。次に、requestsheadersを利用してHTTPレスポンスヘッダからContentTypeや添付ファイルのファイル名を取得します。最後に、requestsのHTTPレスポンスのcontentを利用してダウンロードファイルのデータにアクセスし、バイナリデータをファイルとして保存します。

以下に具体的なコードを示します。

import requests
import os
from datetime import datetime

DOWNLOAD_SAVE_DIR = os.getenv("DOWNLOAD_SAVE_DIR")

if __name__ == "__main__":
    url = 'http://localhost:3000/report3/0000001'
    response = requests.get(url)
    contentType = response.headers['Content-Type']
    contentDisposition = response.headers['Content-Disposition']
    ATTRIBUTE = 'filename='
    fileName = contentDisposition[contentDisposition.find(ATTRIBUTE) + len(ATTRIBUTE):]
    saveFileName = datetime.now().strftime("%Y%m%d_%H%M%S_") + fileName
    saveFilePath = os.path.join(DOWNLOAD_SAVE_DIR, saveFileName)
    with open(saveFilePath, 'wb') as saveFile:
        saveFile.write(response.content)

このコードは、指定したURLからファイルをダウンロードし、環境変数で指定したディレクトリに保存します。ファイル名は、HTTPレスポンスヘッダから取得し、現在の日時をプレフィックスとして付けています。

以上がPythonとrequestsを使ったファイル操作の基本的な手順です。これを応用することで、様々なWeb上のファイルを効率的にダウンロードすることが可能となります。.

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です