将 Tweepy Status 对象转换为 JSON
Convert Tweepy Status object into JSON
我正在使用 Tweepy 下载推文。我有一个程序,然后将实际的 Status
对象以文本形式写入文件。如何将其转换为 JSON,或将此对象导入回 Python?我试过使用 JSON 库进行编码,但 Status 不是 JSON 可序列化的。
tweepy 的 Status
对象本身不是 JSON 可序列化的,但它有一个 _json
属性 包含 JSON 可序列化的响应数据。例如:
>>> status_list = api.user_timeline(user_handler)
>>> status = status_list[0]
>>> json_str = json.dumps(status._json)
更好的方法是使用 tweepy 解析器。它没有很好地记录 - 请参阅 Tweepy API reference - 但它是 public API,比使用 _json
属性.
安全得多
import tweepy
auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
auth.set_access_token(ACCESS_TOKEN, ACCESS_TOKEN_SECRET)
api = tweepy.API(auth, parser=tweepy.parsers.JSONParser())
status = api.user_timeline(user=username, count=1)[0]
json.dumps(status)
status
现在是一个 json 对象。
users = api.search_users('TimHortons', 1)
print(json.dumps(users[0]._json))
如果对象有 _json,则使用 json.dumps(users[0]._json)
。用户只是一个例子。
我正在使用 Tweepy 下载推文。我有一个程序,然后将实际的 Status
对象以文本形式写入文件。如何将其转换为 JSON,或将此对象导入回 Python?我试过使用 JSON 库进行编码,但 Status 不是 JSON 可序列化的。
tweepy 的 Status
对象本身不是 JSON 可序列化的,但它有一个 _json
属性 包含 JSON 可序列化的响应数据。例如:
>>> status_list = api.user_timeline(user_handler)
>>> status = status_list[0]
>>> json_str = json.dumps(status._json)
更好的方法是使用 tweepy 解析器。它没有很好地记录 - 请参阅 Tweepy API reference - 但它是 public API,比使用 _json
属性.
import tweepy
auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
auth.set_access_token(ACCESS_TOKEN, ACCESS_TOKEN_SECRET)
api = tweepy.API(auth, parser=tweepy.parsers.JSONParser())
status = api.user_timeline(user=username, count=1)[0]
json.dumps(status)
status
现在是一个 json 对象。
users = api.search_users('TimHortons', 1)
print(json.dumps(users[0]._json))
如果对象有 _json,则使用 json.dumps(users[0]._json)
。用户只是一个例子。