2015-01-12 32 views
24

Tôi đang sử dụng Tweepy để tải xuống các tweet. Tôi có một chương trình sau đó viết đối tượng Status thực tế vào một tệp ở dạng văn bản. Làm cách nào để dịch thành JSON hoặc nhập đối tượng này trở lại vào Python? Tôi đã thử sử dụng thư viện JSON để mã hóa, nhưng Trạng thái không phải là JSON có thể tuần tự hóa được.Chuyển đổi đối tượng Trạng thái Tweepy thành JSON

+1

Tôi đã làm, tôi đã thử sử dụng Thư viện JSON, nhưng đối tượng không phải là JSON có thể nối tiếp – KOM

Trả lời

60

Đối tượng tweepy không phải là JSON có thể tuần tự hóa, nhưng nó có thuộc tính _json chứa dữ liệu phản hồi có thể tuần tự hóa JSON. Ví dụ:

>>> status_list = api.user_timeline(user_handler) 
>>> status = status_list[0] 
>>> json_str = json.dumps(status._json) 
+0

Câu trả lời này hoạt động hoàn hảo. Cảm ơn bạn – KOM

+0

Tôi đã tìm kiếm điều này ở khắp mọi nơi, cảm ơn! – Krishh

+0

Cảm ơn bạn. Tôi phải mất một lúc để tìm ra câu trả lời của bạn. – orientchen1978

3

Cách tốt hơn để làm điều này là sử dụng trình phân tích cú pháp tweepy. Nó không thực sự được viết nhưng ít nhất nó không yêu cầu sử dụng một phương thức riêng.

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 hiện là đối tượng json.

Các vấn đề liên quan