Python 仅提取特定hastag的tweet

Python 仅提取特定hastag的tweet,python,tweepy,Python,Tweepy,我使用Python3.4,TweepyAPI将tweets提取到一个文本文件中,但不是只提取tweets,而是提取整个页面源代码。如果有办法只获取推文,那么就不要获取完整的源代码。推文格式为JSON。因此,在脚本中包含简单的JSON来对它们进行编码。(顺便说一句,这是Python2.7,因此您必须以不同的方式进行打印) 用python加载每个tweet,确保data['entities]['hashtags]字段不是空的(因此它有一个hashtag) 然后将其打印到文件中 print(tweet

我使用Python3.4,TweepyAPI将tweets提取到一个文本文件中,但不是只提取tweets,而是提取整个页面源代码。如果有办法只获取推文,那么就不要获取完整的源代码。

推文格式为JSON。因此,在脚本中包含简单的JSON来对它们进行编码。(顺便说一句,这是Python2.7,因此您必须以不同的方式进行打印)

用python加载每个tweet,确保data['entities]['hashtags]字段不是空的(因此它有一个hashtag)

然后将其打印到文件中

print(tweet_text, file=write_file)

这些只是片段,使用这个脚本来帮助你开始和源推特。对他来说是个大惊喜:

推特流媒体API返回了一条推特,该推特是以JSON格式跟踪给定单词的

from requests_oauthlib import OAuth1Session
twitter_session = OAuth1Session(consumer_key,client_secret=consumer_secret,resource_owner_key=access_token,resource_owner_secret=access_token_secret)
streaming_tweets_objects = twitter_session.post('https://stream.twitter.com/1.1/statuses/filter.json',data={'track':query_word },stream=True)
将查询词替换为您要查找的标签。。请注意,如果hashtag以hashtag的形式出现在tweet文本中,它也会返回。 对于hashtag,您可以通过检查['entities']['hashtags']['text']中的状态来筛选结果

迭代流化_tweets_对象以获取tweets及其元数据

for tweet in r.iter_lines():
    if tweet:
        tweet_data = json.loads(tweet)

现在,您可以从tweet数据json字符串中获取所需的所有标记。

我们可以查看您的代码吗?那么您到目前为止尝试了什么?是否愿意分享您的试用和错误代码?api=tweepy.api(auth)alltweets=[]新建tweets=api.user_timeline(screen_name=screen_name,count=200)alltweets.extend(新建tweets)Olister=alltweets[-1]。id-1而len(新建tweets)>0:print(“%s”%(最早))新建tweets=api.user_timeline(screen_name=screen_name=screen_name,count=200,id=Olister)alltweets.extend(new_tweets)oldest=alltweets[-1].id-1 print(“%s”%(len(alltweets)))outtweets=[[tweet.id_str,tweet.created_at,tweet.text.encode(“utf-8”)]用于所有tweets中的tweet]打开(“%s_tweets.csv”%screen_name,'wb'),作为f:writer=csv.writer(f)如何在文件中存储该tweets“变量返回一个值响应[200],您需要迭代此对象。我已编辑了上面的回复以供参考。希望这有帮助!找不到import_simplejson python模块,获取名称错误“entities”
entities
中应给出的值是一个JSON值,其中包含
哈希标记。您只是检查其中是否有值指示tweet中有一个hashtag。然后,您从data_temp保存tweet文本。它是import_simplejson还是import simplejson??
from requests_oauthlib import OAuth1Session
twitter_session = OAuth1Session(consumer_key,client_secret=consumer_secret,resource_owner_key=access_token,resource_owner_secret=access_token_secret)
streaming_tweets_objects = twitter_session.post('https://stream.twitter.com/1.1/statuses/filter.json',data={'track':query_word },stream=True)
for tweet in r.iter_lines():
    if tweet:
        tweet_data = json.loads(tweet)