1

我正在尝试使用 python 库 Tweepy 流式传输 twitter 数据。我已经设置了工作环境,在谷歌上搜索了这些东西,但我不知道事情是如何工作的。我想将火花流(DStream - 批处理)与python(tweepy)一起使用。我至少经历了以下链接:

以下 tweepy 代码对我来说工作正常:

import tweepy

consumer_key = ''
consumer_secret = ''
access_token = ''
access_secret = ''

auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_secret)
api = tweepy.API(auth)

politicsTweets = tweepy.Cursor(api.search, q='#GONAWAZGO').items(100)

for tweet in politicsTweets:
    print tweet.created_at, tweet.text, tweet.lang

但它没有使用火花流。我应该如何更新上述代码以使用 Spark Streaming?我不明白为什么我需要两个单独的文件?总的来说,我正在尝试执行以下操作:

  1. 从 2017 年 5 月 1 日开始获取前 10 个主题标签。(Tweepy 搜索功能接受参数“since_id”,不知道如何使用它 [ http://docs.tweepy.org/en/latest/api.html#help-methods ]? )
  2. 计算自 2013 年 5 月 11 日以来发现#GONAWAZGO 的次数。
  3. 数一数巴基斯坦以外的人做了多少#gonawazgo。(没有任何日期限制,Tweepy 光标方法接受地理编码,但我想要来自提供的地理编码以外的位置的推文。)
  4. 在 Twitter 上观察有关法国选举的趋势。
  5. 查找由 [ https://twitter.com/imrankhanpti ] 推特帐户发布的最新推文。(Tweepy 搜索方法接受用户 ID,我怎么能得到它?)

最重要的是,我对何时使用 Twitter REST/Streaming API 感到有些困惑。我认为应该使用第 1 点和第 2 点 REST API,因为我们正在处理迄今为止的过去数据,并且应该使用剩余的 Streaming API。

4

1 回答 1

0

Twitter 搜索 API 有 7 天的限制。这意味着您无法获取任何超过 7 天的数据。这是 Twitter 搜索 API 文档的链接。查看“直到”参数提到的描述:

https://developer.twitter.com/en/docs/tweets/search/api-reference/get-search-tweets.html

我希望这会有所帮助!

于 2019-02-26T06:45:07.120 回答