【发布时间】:2016-07-10 19:46:43
【问题描述】:
也许你可以帮助我。以下 Python 代码检索 Twitter 流数据并在获得 1000 条推文数据时停止。它可以工作,但返回由制表符分隔的字段“created_at、screen_name 和 text”。相反,我想以 JSON 格式获取数据。如何设置代码以获取 JSON 格式的数据?
# Import the necessary package to process data in JSON format
try:
import json
except ImportError:
import simplejson as json
# Import the necessary methods from "twitter" library
from twitter import Twitter, OAuth, TwitterHTTPError, TwitterStream
# Variables that contains the user credentials to access Twitter API
CONSUMER_KEY = '7pWHWtYlXM9ayJfUKv2F8v84B'
CONSUMER_SECRET = 'Dfcx10Px77Ggn0qGbCHc4TZC7M2IHsXpqk9CaGiCLzcr9VMX5n'
ACCESS_TOKEN = '245080367-zuLrIbxblOnocashgku9dsmDKgy3R7uU0VCTIRDx'
ACCESS_SECRET = 'wCx5ufD9Zft46hVjieLdv0af7p9DxUTsPgge9Zm2qelR9'
oauth = OAuth(ACCESS_TOKEN, ACCESS_SECRET, CONSUMER_KEY, CONSUMER_SECRET)
# Initiate the connection to Twitter Streaming API
twitter_stream = TwitterStream(auth=oauth)
# Get a sample of the public data following through Twitter
#iterator = twitter_stream.statuses.sample()
iterator = twitter_stream.statuses.filter(track="Euro2016", language="fr")
tweet_count = 1000
for tweet in iterator:
tweet_count -= 1
print (tweet['created_at'],"\t",tweet['user']['screen_name'],"\t",tweet['geo'], "\t",tweet['text'])
if tweet_count <= 0:
break
【问题讨论】:
-
“它可以工作,但返回由制表符分隔的字段“created_at、screen_name 和 text”” - 和?这正是您所要求的。
-
@jonrsharpe 我想要 JSON 格式的输出数据
-
因此更改代码以执行此操作,但当它完全按照其写入内容时不要感到惊讶。你有问题吗?也许阅读How to Ask。
标签: python json python-3.x twitter