現在、pythonを勉強中でちょっとしたWEBアプリを作っていたのですが、ダウンロード処理を書かないといけなくなったので、モジュールを作成してみました。よかったらどうぞ。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | # -*- coding: utf-8 -*- import sys import os def download(req,filepath): req.content_type = 'application/octet-stream' req.headers_out['Content-Type'] = 'application/octet-stream' req.headers_out['Content-Disposition'] = "attachment; filename=\"" + os.path.basename(filepath) req.headers_out['Content-Length'] = str(os.path.getsize(filepath)) req.headers_out['Expires'] = '0' req.headers_out['Cache-Control'] = 'must-revalidate, post-check=0,pre-check=0' req.headers_out['Pragma'] = 'private' if sys.platform == "win32": import msvcrt msvcrt.setmode(sys.stdout.fileno(), os.O_BINARY) return req.sendfile(filepath) |