【问题标题】:Spark TwitterStream, filter tweets by locationSpark TwitterStream,按位置过滤推文
【发布时间】:2016-06-01 20:58:19
【问题描述】:

我正在尝试获取特定区域的推文。 我正在使用 Spark 1.6.1(Scala) 和 Twitter4J 4.0.4。 程序的开头是标准的(键等) 我使用 TwitterUtils 创建了一个流,例如:

val tweetStream = TwitterUtils.createStream(ssc, None, filter, StorageLevel.MEMORY_ONLY_SER_2)

我在研究中发现 FilterQuery 并尝试过 在 tweetStream 的 filter 方法中使用它,但它不接受它。

我错过了什么?

谢谢

【问题讨论】:

    标签: scala twitter apache-spark


    【解决方案1】:

    如果您调试 TwitterInputDStream.scala,尤其是:

          val query = new FilterQuery
          if (filters.size > 0) {
            query.track(filters.mkString(","))
            newTwitterStream.filter(query)
          } else {
            newTwitterStream.sample()
          }

    过滤推特流的唯一可能性是基于关键字,因为仅使用 track() 方法。我试过这个来搜索特定的主题标签,这很有效。

    【讨论】:

    • 谢谢塔拉斯的解释。所以不知道有没有可能?
    • 据我所知,没有。
    【解决方案2】:

    谁有兴趣按位置过滤我找到了解决方法。

    每条推文都有地理位置(纬度/经度。)
    其他有用的字段是地点。它有许多可以过滤的字段:“国家”、“国家代码”、“城市”等。

    唯一的缺点是它在您收到推文后被过滤,而不是在 Twitter 端。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-11
      • 2015-09-12
      • 2017-09-08
      • 2016-03-07
      • 1970-01-01
      相关资源
      最近更新 更多