2016-09-27 20 views
1

私はこのボットを使ってTwitter APIを取得し、それを自分のデータベースに持ち込んでいます。効率的ではないと思った時に私が1つのツイートをつかむ前に、私は彼らが持っていた限界から1つのリクエストを使っていました。その代わりに私は150の結果をつかむことにしました。私は戻って、これらの結果を得る:PythonオブジェクトをJSON文字列に変換

[Status(ID=780587171757625344, ScreenName=Ampsx, Created=Tue Sep 27 01:57:39 +0000 2016, Text='You know who you are #memes').

私は約150これらのを取得します。これをJSONに変換できるライブラリはありますか?

+0

私はそれを取得しません。 twitter apiはすでにjsonを返すのではないのですか? – njzk2

+1

jsonモジュール 'import json'を使って、' jsondata = json.dumps(python list or dictionary) 'で変換することができます。したがって、 'Status'オブジェクトは辞書に変換されるべきです。 – Leonard2

+0

「これをJSONファイルに変換する」ことはできません。あなたはそれをJSONデータに変換することができます。 – Corgs

答えて

3

あなたは2.6+を使用している場合だけで、あなたが使用することができますバンドルライブラリ(docs)があります:

import json 
json_string = json.dumps(object) 

我々は迅速なAPIエンドポイントのこのロットを使用し、あなただけの必要シリアル化しようとしているオブジェクトに関数や複雑なネストがあることに注意する必要があります。フィールドをスキップしたり、いくつかの出力をカスタマイズしたりできます。

+0

このメソッドを使用してもJSONデータには変換されません。私はforループでそれを投げるべきですか? – Lewis

+0

あなたは一連のJSON文字列で終わることができますが、最初にそれらをラップしてから、1つのjson.dumps呼び出し – jaylynch

1

はい、すばらしいGoogle検索では、jsonモジュールが公開されていました。

import json 

# instead of an empty list, create a list of dict objects 
# representing the statues as you'd like to see them in JSON. 
statuses = { 'statuses': [] } 

with open('file.json', 'w') as f: 
    f.write(json.dumps(statuses).encode('utf-8')) 
0
import json 
jsondata = json.dumps(TwitterStatusObject.__dict__) 
+0

'Object .__ dict__'はクラスまたはモジュールの属性と関数を返します。 – Corgs

+0

コードには常に説明を追加してください... – andreas

関連する問題