【问题标题】:Not able to see time zone, place or geolocation of any tweets无法查看任何推文的时区、地点或地理位置
【发布时间】:2015-12-13 18:18:27
【问题描述】:

我现在正在关注两个教程,两个教程都已启动并运行,我从它们那里获得了大量推文/情绪评分:

1) Azure 上的 Twitter 流分析 https://azure.microsoft.com/en-us/documentation/articles/stream-analytics-twitter-sentiment-analysis-trends/

2) 使用 Spark Streaming 进行 Twitter 分析http://ampcamp.berkeley.edu/3/exercises/realtime-processing-with-spark-streaming.html

我正在使用apps.twitter.com 提供的免费oauth 工具。

问题 我在 Spark Streaming 应用程序中尝试了 getPlace、getGeoLocation,我得到的每条推文对于这两个字段都有一个空值。我已经尝试过滤只有 getPlace 值的推文,获取 GeoLocation 并且两者都为空(我运行该应用程序将近 20 分钟)。

我还尝试在 Azure 应用程序中获取 TimeZone(这样我就可以获得某种地理数据),即便如此,我仍然不断获得 TimeZone 的空值。

可能的障碍 1) 免费的 twitter api 是否会过滤掉地点/地理位置信息,所以我最终会购买更好的 api 订阅?

2) 我是否需要明确搜索具有地理位置/地点的推文?而不是获取所有推文,然后过滤掉具有地理位置/地点的推文?如果是这样,我可以在 Spark Streaming 中执行此搜索吗?这是我在 Spark Streaming 中的代码:

val stream = TwitterUtils.createStream(ssc, None, filters) 
val hashTags = stream.map(status => Tweet(status.getPlace().getName(), classifyTweet(status.getText())))

感谢您的帮助!

【问题讨论】:

    标签: twitter twitter-oauth twitter4j spark-streaming azure-stream-analytics


    【解决方案1】:

    我个人使用免费的 Twitter api 来获取位置并将其发布在 PowerBi 上的地图上。所以你可以排除第一个障碍。

    需要注意的是,位置字段仅在客户端明确允许应用程序具有位置时才可用,这使得它很少被发现。我的样本数据中带位置的数据比例约为 8%。

    spark方面没有答案,只是想帮你排除第一种可能。

    希望这会有所帮助。

    【讨论】:

      猜你喜欢
      • 2021-10-10
      • 2014-08-19
      • 1970-01-01
      • 2021-01-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-06
      相关资源
      最近更新 更多