2016-10-29 7 views
-4

私は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を使用するには

+0

あなたは、GETやPOSTとして送信することができます - それはあなたがDjangoのコードを持っているものを依存しています。 – furas

+0

「データ」変数を受け入れるために「カテゴリ」項目を変更する方法と、Django側でどのように表示されるのですか? – RknRobin

+0

'category'はリクエストではなく結果/レスポンスを保持します。あなたはそれを変更できません。 'get(...、params = data)'または 'post(...、data = data)'を使ってください。 [documentation documentation](http://docs.python-requests.org/ja/master/user/quickstart/)を読んでください – furas

答えて

0

- のようなHTML形式)

BTW。いくつかのAPIは、すべての必要な情報を送信するために、GETまたはPOSTの1回の要求でparams=data=を必要とします。

読むrequests documentation

関連する問題