はじめに
requestsを使用してファイルをダウンロードするときに、ファイルの種類がわからず拡張子もないために正しくダウンロードできないという問題が発生していまいました…
それの対処法を記載したいと思います。
実行環境
Windows11
python : 3.7.9
発生した問題
requestsモジュールを使用してファイルをダウンロードをしたかったのですが、そのファイルのファイル名も種類もわからないため、何の拡張子をつければわからないという問題に直面しました。
解決策
私はmimetypesモジュールを使用して、ヘッダー情報からファイルの拡張子を推測するという解決策でこの問題を解消しました。
1. mimetypesモジュールのインポート
以下をpythonファイルに記載してmimetypesモジュールをインポートします
import mimetypes
2. requestsモジュールを使用してファイルのダウンロード
response = requests.get(取得したいファイルのURL)
3. ヘッダー情報から拡張子の推測
拡張子 = mimetypes.guess_extention(response.headers['Content-Type'])
これによってrequestsモジュールで取得したファイルのヘッダー情報から拡張子を推測することができました。
最後に
もし種類がわからないファイルの拡張子を取得したい状況になった際にご参考になれば幸いです。
ご覧いただき有難うございました!