1

特定のURLに配置されたファイルのファイルタイプを確認したい。今、私はそれを行う2つの方法を知っています:

  1. URL ファイルの末尾を確認します (または少なくともLocationHTTP 要求応答から)。
  2. Content-Type(MIMEタイプ)を確認してください

これらの両方から、前者ははるかに信頼性が低く、後者も常に最良の結果を保証するとは限りません。GETそこで、リソースのダウンロード中にリクエストを送信してファイルの種類を確認し、ダウンロードをキャンセルすることはできないのではないかと考えました。

ブラウザでファイルのダウンロードを開始すると、ファイル拡張子も表示されます。これはPythonで実行できますか?

4

1 に答える 1

0

ダウンロードのファイル拡張子が必要な場合は、Content-Dispositionヘッダーを確認できます。典型的な例:

Content-disposition: attachment; filename=<downloadFilename>

応答に上記のヘッダーが含まれている場合は、regexp を使用してファイル名を取得し、アクションを実行できます。そのヘッダーが存在しない場合は、質問で言及した方法にフォールバックする必要があります。

ダウンロードのファイル タイプに関心がある場合は、MIME タイプに固執することをお勧めします。これはより信頼性が高くなります (通常)。

HTH

于 2013-04-07T04:17:42.710 に答える