我如何建立特朗普情绪追踪器
每分钟分析超过一千条推文,以了解唐纳德·特朗普总统的实时情况
介绍
美国总统, 唐纳德·特朗普 可以说是当今世界上最极端的人物 。 无论您的政治忠诚度在哪里,您都可能对特朗普至少有一些强烈的意见。 无论是他行为的不稳定性还是他做事方式的无礼,似乎每个人都对他着迷。
这已经反映在许多有趣的项目中,例如Trump Tracker , FiveThirtyEights人气评级和Track Trump 。 考虑到这些项目, 我想我会戴上帽子,然后寄出自己的东西。
总览
在 特朗普情绪跟踪 使用实时Twitter的数据来确定总裁唐纳德·特朗普的当前公众的看法。 Web应用程序在启动后的最后五分钟内流式传输所有包含“ Trump”字样的推文。 然后对推文进行情绪分析,以确定它们的正面或负面。 最后,将情感分数平均并使用直观的可视化报告给您。
大纲
下面概述了整个过程,并在本文的其余部分中对其进行了详细说明:
- 创建了一个推特流光 ,它收集带有单词“ Trump”的推文并将其传输到数据帧中
- 利用VADER Sentiment Analysis软件包来推测每个给定推文的正面或负面
- 将时间范围调整为最后五分钟,并平均所有推文的情感分数
- 将后端转移到Flask应用程序以进行部署
- 计划如何有效传达见解并设计用户界面
- 放在一起,并在Heroku上托管了该网络应用
见项目
如果您对幕后的任何内容都不感兴趣,请不要担心。 欢迎跳过以下所有详细信息,并通过以下链接查看我的 Github 上的代码 或作品本身:
特朗普情绪追踪器
目标
我进入这个项目是想完成几件事。 首先,我想提高 与 全栈开发 相关的技能 。 在此之前,我曾分别进行过后端和前端编程,但是我从未参加过一个完整的项目 。 最重要的是,我也很想借此机会设计一些东西。 我最近对设计产生了兴趣,在参与该项目之前,我从未开发过Web应用程序用户界面。
工具和软件
进入这个几乎没有Python开发背景的项目时,我的首要任务是确定环境。 经过一番考虑,我最终选择了Pycharm (2017.1.5版)。 我发现Pycharm对于Web应用程序开发非常直观且有效。 我敢肯定,不久的将来我会恢复到原来的状态。 如果您是学生,并且对Pycharm感兴趣,可以 在这里 免费获得 。
我还使用了Python 3.5.2和一些其他依赖项,可以在Github存储库中的requirements.txt文件下找到它们。 最后,我使用Heroku托管了Web应用程序。
后端
该项目的第一步是找出一种流推文,然后对其进行正确格式化以进行分析的方法。 对于流媒体,我选择使用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上进行检查。 如果您有任何反馈或疑问,请随时通过Twitter和LinkedIn与我联系。 您也可以在我的网站上看到我的更多作品。
最后,请务必订阅以下我的每周数据科学新闻通讯。 谢谢阅读!
最初于 2017 年8月31日 在 conordewey.com 上 发布 。
From: https://hackernoon.com/how-i-built-trump-sentiment-tracker-355ff87859f9