Twitter数据挖掘(使用Python进行大数据分析的指南)

本文概述

  • 什么是大数据?
  • 为什么使用Twitter数据?
  • 工具概述
  • 入门
  • 示例1:你的时间轴
  • 示例2:来自特定用户的推文
  • 示例3:使用关键字查找推文
  • 总结
大数据无处不在。期。在当今时代经营成功的过程中, 无论你是否喜欢, 你都可能会涉足该业务。
无论你是要赶上时代的商人, 还是要寻找下一个项目的编码专家, 本教程都将为你简要概述什么是大数据。你将了解它如何适用于你, 以及如何通过Twitter API和Python快速入门。
Twitter数据挖掘(使用Python进行大数据分析的指南)

文章图片
什么是大数据? 大数据正好听起来像是大量数据。单单一个数据点并不能给你太多洞察力。但是, 数TB的数据与复杂的数学模型和强大的计算能力结合在一起, 可以创造出人类无法产生的见解。大数据分析为企业提供的价值是无形的, 并且每天都超过人类的能力。
大数据分析的第一步是收集数据本身。这就是所谓的” 数据挖掘” 。数据可以来自任何地方。大多数企业处理千兆字节的用户, 产品和位置数据。在本教程中, 我们将探索如何使用数据挖掘技术来收集Twitter数据, 这可能比你想象的要有用。
例如, 假设你经营Facebook, 并希望使用Messenger数据来提供有关如何更好地向受众进行广告宣传的见解。 Messenger每月有12亿活跃用户。在这种情况下, 大数据就是用户之间的对话。如果你要单独阅读每个用户的对话, 则可以很好地了解他们的喜好, 并可以向他们推荐产品。使用称为自然语言处理(NLP)的机器学习技术, 你可以大规模地完成此过程, 整个过程可以自动化并由机器决定。
这只是机器学习和大数据分析如何为你的公司增加价值的无数示例之一。
为什么使用Twitter数据? Twitter是数据的金矿。与其他社交平台不同, 几乎每个用户的推文都是完全公开且可拖动的。如果你要获取大量数据以进行分析, 那么这是一个巨大的优势。 Twitter数据也很具体。 Twitter的API允许你执行复杂的查询, 例如在过去二十分钟内拉出有关某个主题的每条推文, 或拉出某位用户的未转发的推文。
一个简单的应用可能是分析你的公司如何在公众中受到欢迎。你可以收集提及你公司(或你喜欢的任何术语)的最后2, 000条推文, 然后对它运行情绪分析算法。
我们还可以定位专门居住在某个位置的用户, 这就是空间数据。此方法的另一个应用程序是绘制全球范围内最常提及你的公司的区域。
如你所见, Twitter数据可以为通向广大公众的见解以及他们如何获得话题提供很大的门户。结合Twitter API的开放性和慷慨的速率限制, 可以产生有力的结果。
工具概述 这些示例将使用Python 2.7。理想情况下, 你应该具有IDE来编写此代码。我将使用PyCharm-Community Edition。
要连接到Twitter的API, 我们将使用一个名为Tweepy的Python库, 稍后将进行安装。
入门 Twitter开发人员帐户
为了使用Twitter的API, 我们必须在Twitter应用程序网站上创建一个开发人员帐户。
  1. 登录或在https://apps.twitter.com/上创建一个Twitter帐户。
  2. 创建一个新应用(右上角的按钮)
    Twitter数据挖掘(使用Python进行大数据分析的指南)

    文章图片
    跟随推文链接通常会带你进入推文本身。遵循第一条推文中的链接将为我们带来以下结果:
    Twitter数据挖掘(使用Python进行大数据分析的指南)

    文章图片
    请注意, 如果你是通过终端而不是PyCharm之类的IDE运行此程序, 则在尝试打印推文文本时可能会遇到一些格式问题。
    结果背后的JSON
    在上面的示例中, 我们使用tweet.text从每个tweet打印了文本。要引用每个tweet对象的特定属性, 我们必须查看Twitter API返回的JSON。
    你从Twitter API收到的结果为JSON格式, 并附带了大量信息。为简单起见, 本教程主要关注每个推特的” 文本” 属性, 以及有关推特(创建推特的用户)的信息。对于上面的示例, 你可以在此处看到整个返回的JSON对象。
    快速浏览一下推文必须提供的一些属性。
    Twitter数据挖掘(使用Python进行大数据分析的指南)

    文章图片
    如果要查找创建鸣叫的日期, 则可以使用打印tweet.created_at进行查询。
    你还可以看到每个tweet对象都带有有关高音扬声器的信息。
    Twitter数据挖掘(使用Python进行大数据分析的指南)

    文章图片
    要获取高音扬声器的” 名称” 和” 位置” 属性, 可以运行print tweet.user.screen_name和print tweet.user.location。
    请注意, 如果你的应用程序依赖于空间数据, 这些属性将非常有用。
    示例2:来自特定用户的推文 在此示例中, 我们仅从我们选择的用户那里获取最新的20条推文。
    首先, 我们将检查Tweepy文档, 以了解是否存在类似的功能。经过一些研究, 我们发现user_timeline()函数正是我们想要的。
    Twitter数据挖掘(使用Python进行大数据分析的指南)

    文章图片
    我们可以看到user_timeline()函数具有一些可以使用的有用参数, 特别是id(用户的ID)和count(我们要提取的推文数量)。请注意, 由于Twitter的速率限制, 每个查询我们只能拉出有限数量的推文。
    让我们尝试从Twitter帐户@NyTimes提取最新的20条推文。
    Twitter数据挖掘(使用Python进行大数据分析的指南)

    文章图片
    我们可以创建变量来存储我们要提取的推文数量(计数), 以及我们要从(名称)提取推文的用户。然后, 我们可以使用这两个参数调用user_timeline函数。以下是更新后的代码(请注意, 你应该将身份验证和API对象创建放在代码的顶部)。
    # Creating the API object while passing in auth information api = tweepy.API(auth)# The Twitter user who we want to get tweets from name = "nytimes" # Number of tweets to pull tweetCount = 20# Calling the user_timeline function with our parameters results = api.user_timeline(id=name, count=tweetCount)# foreach through all tweets pulled for tweet in results: # printing the text stored inside the tweet object print tweet.text

    我们的结果应如下所示:
    Twitter数据挖掘(使用Python进行大数据分析的指南)

    文章图片
    这种数据的流行应用包括:
    • 对特定用户进行运行分析, 以及他们如何与世界互动
    • 查找Twitter影响者并分析其关注者趋势和互动
    • 监视用户关注者中的更改
    示例3:使用关键字查找推文 让我们做最后一个例子:获取包含关键字的最新推文。如果你想监视Twitter世界中特别提到的主题, 甚至想知道你的公司如何被提及, 这可能非常有用。假设我们想看看Twitter如何提及srcmini。
    浏览Tweepy文档后, search()函数似乎是实现我们目标的最佳工具。
    Twitter数据挖掘(使用Python进行大数据分析的指南)

    文章图片
    这里最重要的参数是q-查询参数, 这是我们要搜索的关键字。
    我们还可以设置language参数, 这样就不会从不需要的语言中获得任何推文。我们只返回英语(” en” )推文。
    现在, 我们可以修改代码以反映我们要进行的更改。我们首先创建变量来存储我们的参数(查询和语言), 然后通过API对象调用该函数。让我们还在循环中打印创建该推文的用户的屏幕名称。
    # Creating the API object while passing in auth information api = tweepy.API(auth)# The search term you want to find query = "srcmini" # Language code (follows ISO 639-1 standards) language = "en"# Calling the user_timeline function with our parameters results = api.search(q=query, lang=language)# foreach through all tweets pulled for tweet in results: # printing the text stored inside the tweet object print tweet.user.screen_name, "Tweeted:", tweet.text

    我们的结果应如下所示:
    Twitter数据挖掘(使用Python进行大数据分析的指南)

    文章图片
    以下是一些可以使用此信息的实用方法:
    • 创建一个空间图, 以了解你的公司在全球最受关注的地方
    • 对推文进行情绪分析, 以了解贵公司的总体看法是正面还是负面
    • 创建推特有关你的公司或产品的最受欢迎用户的社交图
    我们可以在以后的文章中介绍其中一些主题。
    总结 Twitter的API在数据挖掘应用程序中非常有用, 并且可以提供广泛的见解。如果你对Twitter API和大数据分析感兴趣, 那么我建议你阅读有关Twitter API, Tweepy和Twitter的限速指南的更多信息。
    【Twitter数据挖掘(使用Python进行大数据分析的指南)】我们仅介绍了访问和提取的基础知识。 Twitter的API可用于处理非常复杂的大数据问题, 涉及人, 趋势和社交图谱, 这些问题太过复杂, 以至于人类的思维无法单独掌握。

      推荐阅读