私はPython 3.4でDjango 1.8.1を使用しており、ファイルをダウンロードするリクエストを使用しようとしています。次のコードは、通常のrequest.getコマンドでサーバーの場所または未処理のファイルで正確なファイルをダウンロードするのに最適です。
ファイルは、渡されたデータに基づいて処理される必要があります(以下、「データ」と示されます)。このデータはDjangoバックエンドに渡され、テキストパス変数に基づいてサーバーから内部プログラムを実行し、代わりに.gコードを出力する必要があります。処理されたファイルをダウンロードするにはどうすればよいですか?
pythonファイル。
import requests, os, json
SERVER='http://localhost:8000'
authuser = '[email protected]'
authpass = 'passwords'
#data not implimented
##############################################
data = {FirstName:Steve,Lastname:Escovar}
############################################
category = requests.get(SERVER + '/media/uploads/9128342/141303729.stl', auth=(authuser, authpass))
#download to path file
path = "/home/bradman/Downloads/requestdata/newfile.stl"
if category.status_code == 200:
with open(path, 'wb') as f:
for chunk in category:
f.write(chunk)
私はこのことについて非常に困惑しているが、私は最善の行動がrequest.getと一緒にデータを渡し、何とかDjangoのための私のviews.py内でそれらをつかむために、いくつかの機能を作ることだと思います。誰でもアイデアはありますか?あなたは
get(... , params=data)
(とあなたがURLのパラメータとしてデータを取得する)
または
post(... , data=data).
を行うことができます(あなたがボディにデータを送信するリクエストでdata
を使用するには
あなたは、GETやPOSTとして送信することができます - それはあなたがDjangoのコードを持っているものを依存しています。 – furas
「データ」変数を受け入れるために「カテゴリ」項目を変更する方法と、Django側でどのように表示されるのですか? – RknRobin
'category'はリクエストではなく結果/レスポンスを保持します。あなたはそれを変更できません。 'get(...、params = data)'または 'post(...、data = data)'を使ってください。 [documentation documentation](http://docs.python-requests.org/ja/master/user/quickstart/)を読んでください – furas