python - 如何使用 tweepy 流式传输来自指定用户的推文(仅当该用户发布推文时才流式传输)

标签 python twitter stream tweepy

我尝试了以下代码:

    class MyListener(StreamListener):
        def on_data(self, data):
            print(data)
            return True

    listener = MyListener()
    auth = OAuthHandler(config.API_KEY, config.API_SECRET)
    auth.set_access_token(config.ACCESS_TOKEN, config.ACCESS_TOKEN_SECRET)
    stream = Stream(auth, listener)
    stream.filter(follow=['<user_id>'])  # assume this user is a celebrity

运行此代码时,我得到的是其他用户的许多垃圾推文或转发。 (假设这个 <user id> 是名人,拥有数百万粉丝。粉丝一直在分享推文)

但我想流式传输发布的原始推文 only通过这个特定 <user id> .我该如何实现?提前致谢。

最佳答案

official documentation说使用 follow你得到的参数:

  • 用户创建的推文。
  • 用户转发的推文。
  • 回复用户创建的任何推文。
  • 用户创建的任何推文的转推。
  • 手动回复,无需按回复按钮即可创建(例如“@twitterapi 我同意”)。

  • 所以你只需要跳过不是由指定用户发布的推文:
    def on_status(self, status):
        if status.user.id_str != '<user_id>':
            return
        print(status.text)
    

    关于python - 如何使用 tweepy 流式传输来自指定用户的推文(仅当该用户发布推文时才流式传输),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57633896/

    相关文章:

    Python子进程调用powershell在pycharm IDE中不返回

    python - 构建列表

    iphone - ios 7.0 在ios模拟器中登录twitter问题

    javascript - 使用 javascript django 的带有图像的推文的工作示例

    flash - 使用 Flash 或 Silverlight 进行语音识别

    python - 是否可以将 C 预处理器宏可靠地转换为 python 代码?

    python - 如何通过 reportlab 将表格定位在特定的 x 和 y 坐标处

    python - 推文对象中缺少 reply_count 属性

    java - 有没有一种简单而安全的方法可以将 PrintWriter 转换为 PrintStream?

    .net - 通过 Asp.Net MVC 中的操作提供文件。使用 byte[] 还是 Stream 更好?