Я использую Tweepy для загрузки твитов. У меня есть программа, которая затем записывает фактический объект Status
в файл в текстовой форме. Как перевести это в JSON или импортировать этот объект обратно в Python? Я попытался использовать библиотеку JSON для кодирования, но Status не является сериализуемым JSON.
Преобразование объекта состояния Tweepy в JSON
Ответ 1
Объект Status
самого tweepy не является сериализуемым JSON, но имеет свойство _json
, которое содержит сериализуемые данные ответа JSON. Например:
>>> status_list = api.user_timeline(user_handler)
>>> status = status_list[0]
>>> json_str = json.dumps(status._json)
Ответ 2
Лучший способ сделать это - использовать tweepy parser. Он не документирован, но, по крайней мере, он не требует использования частного метода.
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-объектом.