我正在使用python 3.4,tweepy API将推文提取到文本文件中,而不仅仅是推文,正在提取整个页面源。如果有办法让推文只有整个源代码。
答案 0 :(得分:0)
这些推文的格式为JSON。因此,在脚本中包含简单的JSON以对其进行编码。 (顺便说一下这是python 2.7所以你必须以不同的方式进行打印)
from tweepy.utils import import_simplejson
json = import_simplejson()
使用python加载每条推文,确保数据[' entities] [' hashtags]字段不为空(因此它有一个标签)
data_temp = json.loads(data)
if data_temp['entities']['hashtags']:
tweet_text = data_temp["text"].encode('utf-8')
然后将其打印到文件
print(tweet_text, file=write_file)
这些只是片段,使用这个人脚本来帮助你开始并获取推文。对他来说很重要:https://github.com/bwbaugh/twitter-corpus
答案 1 :(得分:0)
twitter的流媒体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)
将query_word替换为您正在寻找的 hashtag ..请注意,如果在tweet文本中存在hashtag而不是hashtag,这也会返回。 对于主题标签,您可以通过检查['entities'] ['hashtags']中的状态来过滤您的结果['text']
遍历streaming_tweets_objects以获取推文及其元数据。
for tweet in r.iter_lines():
if tweet:
tweet_data = json.loads(tweet)
现在,您可以从推文数据json字符串中获取所需的所有标记。