从包含给定关键字的文本文件中过滤句子。线条用引号分隔

时间:2017-05-06 17:46:50

标签: python sentiment-analysis

我使用tweepy中的python从Twitter访问了数据,并将其存储在文本文件中。该文本文件包含30个推文句柄的推文,并以逗号分隔。我现在只想选择那些包含关键字“@Tcs”的帖子,并将其存储在新的文本文件中。

以下是访问推文并将其存储在文本文件中的代码。

import tweepy
import json
import json
import csv

# Consumer keys and access tokens, used for OAuth
CONSUMER_KEY = "86YITDk6xVLNZOizWf"
CONSUMER_SECRET = "exf2t2f7txKObmOlYqrHRFt820D4kflCGzCxOStNyKXf"
ACCESS_TOKEN = "578789959-shMwxAvEZc3JW9c3F9QzbBnjwneIqsRo88"
ACCESS_SECRET = "XGXhI80cX30P20RYjuedicbrcBoFKzfkM5ckW"

# OAuth process, using the keys and tokens
auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
auth.set_access_token(ACCESS_TOKEN, ACCESS_SECRET)
List_Screen=['@livemint', '@ReutersIndia', '@EconomicTimes', '@NDTVProfit', '    @forbes_india','@moneycontrolcom','@ETNOWlive', ' 
 @ETmarkets','@Investopedia','@BloombergTVInd']
# Creation of the actual interface, using authentication
api = tweepy.API(auth)
with open('data.txt', 'w') as outfile:
   for i in range(len(List_Screen)):
      for status in tweepy.Cursor(api.user_timeline, 
screen_name=List_Screen[i]).items(10):
         print status._json['text']
         data=status._json['text']
         json.dump(data, outfile)

这是需要过滤的文本文件的屏幕截图。

1 个答案:

答案 0 :(得分:1)

您可以使用列表理解。

考虑每个推文是列表中的字符串:

tweet_list = [tweet for tweet in data if '@Tcs' in tweet]