在玩 Tweepy 时,我注意到调用 get_user 返回的“状态”变量是<tweepy.models.Status object at 0x02AAE050>
当然,我可以调用 get_user.USER.status,但是如何从 get_user 调用中获取这些信息?即我想循环通过用户。getstate () 如果我找到一个需要进一步迭代的对象,也循环遍历它
我已经搜索了高/低的答案,但是我对 Python 的陌生导致了一些问题,如果我知道要问的正确问题,我很确定这些问题很容易解决。
感谢您在这里的任何指示...
# -*- coding: utf-8 -*-
import sys
import tweepy
import json
from pprint import pprint
api = tweepy.API()
def main():
print "Starting."
user = api.get_user('USER',include_entities=1)
print "================ type ================="
print type(user)
print "================ dir ================="
print dir(user)
print "================ user ================="
#
# We can see 'status': <tweepy.models.Status object at 0x02AAE050>, .......but how do I "explode" that automagically?
#
pprint ((user).__getstate__())
print "================ user.status ================="
pprint ((user).status.__getstate__())
print "================= end ================="
if __name__ == "__main__":
main()
通过使用 jsonpickle,我能够使用以下代码获得预期的行为。
import jsonpickle
.
.
.
user = api.get_user('USERNAME',include_entities=1)
pickled = jsonpickle.encode(user)
print(json.dumps(json.loads(pickled), indent=4, sort_keys=True)) #you could just print pickled, but this makes it pretty
我仍然很想了解我在了解如何检测和扩展该状态对象时缺少什么。