You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Tweepy库无法导入StreamListener类报错问题求助

报错原因

你安装的Tweepy为4.0及以上版本,该版本重构了流式监听模块的实现,彻底移除了旧版tweepy.streaming.StreamListener类,你升级Tweepy的操作反而会保留该问题,而非解决。

修复方案

有两种可选方案,按需选择即可:

  • 方案一:降级Tweepy到支持StreamListener的最后稳定版本,无需修改现有代码
    直接执行安装命令:
    pip install tweepy==3.10.0
    
    安装完成后重新运行原有脚本即可正常使用。
  • 方案二:适配新版Tweepy的流式API写法,无需降级
    新版Tweepy取消了单独的StreamListener类,直接继承tweepy.StreamingClient重写对应回调方法即可,示例代码如下:
    import tweepy
    
    # 替换为你自己的Twitter API v2 Bearer Token
    BEARER_TOKEN = "你的开发者密钥"
    
    class CustomStream(tweepy.StreamingClient):
        # 接收到推文时触发
        def on_tweet(self, tweet):
            print(tweet.text)
        
        # 接口请求报错时触发
        def on_error(self, status_code):
            print(f"接口返回错误码:{status_code}")
            # 触发限流时自动断开连接
            if status_code == 420:
                return False
    
    if __name__ == "__main__":
        stream = CustomStream(BEARER_TOKEN)
        # 添加监听规则,示例为监听包含python关键词的推文
        stream.add_rules(tweepy.StreamRule("python"))
        # 启动监听
        stream.filter()
    
    注意:该方案使用的是Twitter API v2版本,你需要提前在开发者后台开通API v2的相关权限才可正常使用。

内容的提问来源于stack exchange,提问作者Alex Amaguaya

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 00:15:03