📜  使用PythonTwitter 情绪分析(1)

📅  最后修改于: 2023-12-03 15:06:53.068000             🧑  作者: Mango

使用PythonTwitter 情绪分析

PythonTwitter 是一个简单易用的 Python 包,用于与 Twitter API 进行交互。通过 PythonTwitter 可以获取 Twitter 上的数据,对其进行分析,比如进行情绪分析。这个功能非常有用,可以帮助企业分析自己的品牌在 Twitter 上的声誉,也可以帮助研究者分析 Twitter 用户的情绪。

安装 PythonTwitter

要使用 PythonTwitter 进行情绪分析,首先需要将其安装到本地。可以使用 pip 命令进行安装,如下所示:

pip install pythontwitter
配置 Twitter API 认证信息

在使用 PythonTwitter 进行情绪分析之前,需要先配置 Twitter API 认证信息。这个认证信息包括 Consumer Key,Consumer Secret,Access Token 和 Access Token Secret。可以在 Twitter Developers 网站上创建一个应用程序,获取这些认证信息。创建应用程序的方法及详细步骤可以参考 Twitter Developers 文档。

在获取认证信息后,将其配置到 PythonTwitter 的 Auth 对象中,如下所示:

from twitter import Api
from twitter import OAuth

CONSUMER_KEY = 'your_consumer_key'
CONSUMER_SECRET = 'your_consumer_secret'
ACCESS_TOKEN = 'your_access_token'
ACCESS_TOKEN_SECRET = 'your_access_token_secret'

oauth = OAuth(ACCESS_TOKEN, ACCESS_TOKEN_SECRET, CONSUMER_KEY, CONSUMER_SECRET)
api = Api(auth=oauth)
获取 Twitter 数据

经过认证信息配置后,可以使用 PythonTwitter 获取 Twitter 数据。比如可以获取针对**特定品牌(比如苹果 iPhone)**的最近 100 条推文,代码如下:

results = api.GetSearch(raw_query="q=%23iphone&result_type=recent&count=100")
tweets_text = []
for r in results:
    tweets_text.append(r.text)
进行情绪分析

获取到针对特定品牌的最近 100 条推文后,可以使用情绪分析工具来进行情绪分析。这里介绍一种常用的情绪分析工具 VADER(Valence Aware Dictionary and sEntiment Reasoner)。VADER 是基于规则的情绪分析工具,可以对英文文本进行情绪识别,得出情绪得分。

要使用 VADER,需要首先安装它的 Python 包,如下所示:

pip install vaderSentiment

安装完成后,就可以使用 VADER 进行情绪分析啦!代码如下:

from vaderSentiment.vaderSentiment import SentimentIntensityAnalyzer

analyzer = SentimentIntensityAnalyzer()

for tweet in tweets_text:
    vs = analyzer.polarity_scores(tweet)
    print("{:-<65} {}".format(tweet, str(vs)))

以上代码会对 tweets_text 列表中的每一条推文进行情绪分析,并输出其情绪得分。其中 vs['compound'] 的值表示推文的总体情绪得分,值的范围为 -1 到 1 之间,值越接近 1,说明推文情绪越积极,值越接近 -1,说nan推文情绪越消极。

总结

通过 PythonTwitter 和 VADER,我们可以很方便地进行 Twitter 情绪分析,并得到推文的情绪得分。这个技术可以应用在很多领域,比如品牌声誉分析,研究用户行为等等。