2017-03-23 25 views
0

私は別の質問を投稿しましたが、コメントセクションに少し混乱させました。基本的には、Pythonでリクエストライブラリを使用して、GETリクエストをAPIに処理するためにCURLを使用して通常どおりに行うことを試みています。私が通常使用するPythonでリクエストを処理してGETリクエストを処理する

オリジナルcurlコマンド:

curl -X GET -H 'Authorization: exapi:111:58d351234e1a:LA2' 'http://api.example.com/v1.14/user?id=1234' 

これを私はここに非常に役立つ人から学んだことは、私は、要求だけでなく、次の手順を実行して、認証ヘッダーを処理することができますから、私は自分のコードを実行したときしかし、私は私がから期待していたbound method response.json of <response [200]>代わりのデータがをGET受ける

import requests 
import json 

url = "http://api.example.com/v1.14/user?id=1234" 
headers = {"Authorization": "exapi:111:58d351234e1a:LA2"} 

response = requests.get(url, headers=headers) 

print response.json 

:私は私のスクリプトのために使用していますPythonコードされます。誰かが私がここで間違っていることを理解するのを助けることができますか?私はヘッダーで何か間違っていると推測していますが、わかりません。

+0

これはヘッダーとは関係ありません。 'response.json'はメソッドですので、' response.json() 'のように呼び出す必要があります。 –

+0

ああ...それは意味をなさない。ありがとう。 – user7681184

答えて

-1

どのように明示的にJSONモジュールの使用に関する:@ juanpa.arrivilagaとして

data = json.loads(response.text) 
print data 
+0

このメソッドを使用するだけではどうですか? –

+0

'.text'を' .json() 'メソッドと混合しないようにしました。 – hurturk

1

はすでに述べたとprint EDメッセージがはっきり言うように、あなたがバウンドjsonメソッドを呼び出す必要があります。混乱の原因は、おそらく属性であるcontentです。

response.json() # method 
response.content # attribute 
+1

これを行うと、 'import json'も取り除くことができます – hurturk

関連する問題