0

Google+ API に対して GET リクエストを行っています。JSON が返されると思います (これについてはよくわかりませんが、こちらの「応答本文の構造は次のとおりです」を参照してください)。json.loads を使用して、応答を Python 辞書に変換します。

 import requests 

 payload = {'query':'celery', 'key':'api_key'}
 r = requests.get("https://www.googleapis.com/plus/v1/activities?", params=payload) 

 my_dict = json.loads(r.text)

以下のように、応答の一部が ecma スクリプトでエンコードされたままになっているように見えることを除いて (これもよくわかりません)、これはすべて正常に機能します。

 \u06a9\u0634\u0648\u0631\u0646\u062f. \u0627\u0632 \u0633\u0627\u0644\u0647\u0627 

私の質問は、これらの文字列をどのようにデコードできますか? また、Google から返されるのは JSON ですか?

よろしくお願いします。

4

2 に答える 2

0

を使用するよりも、オブジェクトのjson属性を単純に使用する方がはるかに簡単だと思います。responsejson.loads()

r = requests.get("https://www.googleapis.com/plus/v1/activities?", params=payload)
my_dict = r.json

また

my_dict = requests.get("https://www.googleapis.com/plus/v1/activities?", params=payload).json

より簡潔なバージョンの場合。

何らかの理由で、python-requests.org のドキュメントで.json()は、これを属性ではなくメソッドとして誤って示していることに注意してください。理由はわかりませんが、混乱しないでください。

于 2013-07-23T16:54:22.927 に答える