我如何建立特朗普情绪追踪器

每分钟分析超过一千条推文,以了解唐纳德·特朗普总统的实时情况

我如何建立特朗普情绪追踪器

介绍

美国总统, 唐纳德·特朗普 可以说是当今世界上最极端的人物 无论您的政治忠诚度在哪里,您都可能对特朗普至少有一些强烈的意见。 无论是他行为的不稳定性还是他做事方式的无礼,似乎每个人都对他着迷。

这已经反映在许多有趣的项目中,例如Trump TrackerFiveThirtyEights人气评级Track Trump 考虑到这些项目, 我想我会戴上帽子,然后寄出自己的东西。

总览

特朗普情绪跟踪 使用实时Twitter的数据来确定总裁唐纳德·特朗普的当前公众的看法。 Web应用程序在启动后的最后五分钟内流式传输所有包含“ Trump”字样的推文。 然后对推文进行情绪分析,以确定它们的正面或负面。 最后,将情感分数平均并使用直观的可视化报告给您。

我如何建立特朗普情绪追踪器
现在还没那么热…

大纲

下面概述了整个过程,并在本文的其余部分中对其进行了详细说明:

  1. 创建了一个推特流光 ,它收集带有单词“ Trump”的推文并将其传输到数据帧中
  2. 利用VADER Sentiment Analysis软件包来推测每个给定推文的正面或负面
  3. 将时间范围调整为最后五分钟,并平均所有推文的情感分数
  4. 将后端转移到Flask应用程序以进行部署
  5. 计划如何有效传达见解并设计用户界面
  6. 放在一起,并在Heroku上托管了该网络应用

见项目

如果您对幕后的任何内容都不感兴趣,请不要担心。 欢迎跳过以下所有详细信息,并通过以下链接查看我的 Github 上的代码 或作品本身:

特朗普情绪追踪器

目标

我进入这个项目是想完成几件事。 首先,我想提高 全栈开发 相关的技能 在此之前,我曾分别进行过后端和前端编程,但是我从未参加过一个完整的项目 最重要的是,我也很想借此机会设计一些东西。 我最近对设计产生了兴趣,在参与该项目之前,我从未开发过Web应用程序用户界面。

工具和软件

进入这个几乎没有Python开发背景的项目时,我的首要任务是确定环境。 经过一番考虑,我最终选择了Pycharm (2017.1.5版)。 我发现Pycharm对于Web应用程序开发非常直观且有效。 我敢肯定,不久的将来我会恢复到原来的状态。 如果您是学生,并且对Pycharm感兴趣,可以 在这里 免费获得

我还使用了Python 3.5.2和一些其他依赖项,可以在Github存储库中的requirements.txt文件下找到它们。 最后,我使用Heroku托管了Web应用程序。

我如何建立特朗普情绪追踪器
快速了解Pycharm环境和工作流程

后端

该项目的第一步是找出一种流推文,然后对其进行正确格式化以进行分析的方法。 对于流媒体,我选择使用Tweepy并实现了一个基本的侦听器,该侦听器在运行时会收集其中带有“ Trump”字样的所有推文。 然后,该类将获取当前的tweet并对其进行适当的格式化,以将其添加到正在进行的pandas DataFrame中。 DataFrame会不断更新,仅将数据保留在一定的时间阈值(5分钟)内,以便获得几乎实时的洞察力。

提取数据并正确格式化后,将进行情感分析。 经过一番研究,我决定使用VADER (价识别字典和情感推理器)。 我之所以选择VADER,是因为它特别适合社交媒体数据。

前端

就用户界面而言,它主要是使用D3.js和HTML创建的。 该仪表是使用Matt Magoffin的开源项目开发的一个起点,该网站的总体感觉在很大程度上是由Track Trump推动的。

我最苦恼的事情之一是将后端与前端集成在一起,以使仪表与当前的平均情感评分相对应。 最终,我可以通过组合不同的JavaScript文件并使用getter和setter来解决这个问题,从而发挥了我的优势。 就用户界面而言,您可以看到以下转换:

我如何建立特朗普情绪追踪器
我如何建立特朗普情绪追踪器
我如何建立特朗普情绪追踪器
我如何建立特朗普情绪追踪器
我如何建立特朗普情绪追踪器

部署方式

一旦项目在本地工作,下一步就是弄清楚我要如何部署它。 我考虑了几种不同的选择,但由于那里有大量出色的教程,最终选择了Heroku 那就是事实,它是免费的。 我发现以下视频特别有帮助,如果你们中的任何人打算尽快检出heroku,我强烈推荐它。

学习资源

您可能会说,我进入了这个旅程,需要学习一些我不希望他们掌握的技能。 为此,我使用了看似无数的在线资源。 但是,有两个确实以Udacity提供的免费“ 全栈开发”课程和senddex提供的各种Youtube教程的形式吸引了我

反射

现在该项目已经发布,我可以回顾并为自己的成就感到自豪。 在整个学习过程中,有时我无疑会努力奋斗并考虑戒烟,但我很高兴自己能坚持下来。 通过坚持并保持耐心, 我最终获得了一些其他我现在没有的技能。

进行这项工作时,我在全栈开发和Web设计方面毫无经验。 但是,由于这个项目以及完成该项目所必须采取的所有步骤, 我可以说我现在是一个更加称职和自信的开发人员。

展望未来,我很高兴看到Trump Sentiment Tracker是否引起任何兴趣,最重要的是,我很高兴开始下一个项目。

包装东西

希望您喜欢听到《 特朗普情绪追踪器》 的制作过程 如果您对代码感兴趣,请确保在Github上进行检查。 如果您有任何反馈或疑问,请随时通过TwitterLinkedIn与我联系。 您也可以在我的网站上看到我的更多作品。

最后,请务必订阅以下我的每周数据科学新闻通讯。 谢谢阅读!

最初于 2017 年8月31日 conordewey.com 发布

From: https://hackernoon.com/how-i-built-trump-sentiment-tracker-355ff87859f9