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

调用Twitter流API遇404错误,请求排查解决方案

Twitter流API 404错误的排查与解决

问题重现

代码实现:

def start_streaming_tweets(self, search_term):
    self.filter(track=search_term, stall_warnings=True, languages=["en"])
        

if __name__ == '__main__':
    twitter_stream = TweetListener(consumerKey, consumerSecret, accessToken, accessTokenSecret)
    twitter_stream.start_streaming_tweets(search_term)

(注:原代码末尾存在多余双引号,属于语法错误,需先修正)

运行时出现错误:

Stream encountered HTTP error: 404
HTTP error response text:
Stream encountered HTTP error: 404

错误原因分析

  • API版本弃用:Twitter已正式关停v1.1版本的部分Streaming API端点,若仍使用旧库调用这些失效接口,会直接返回404。
  • 库版本不兼容:低版本的Twitter SDK(如tweepy < 4.0)未适配v2 API,内部调用的仍是已废弃的v1.1流接口。
  • 认证信息混用:v1.1与v2 API的认证方式不同,若用v2的Bearer Token调用v1.1接口,或用v1.1的密钥调用v2接口,可能触发服务端返回异常的404状态码。
  • 代码语法错误:原代码末尾的多余双引号会导致语法报错,虽不是404的直接原因,但需优先修正以确保代码可正常执行。

解决办法

  1. 升级SDK到适配v2 API的版本
    以tweepy为例,执行命令更新到最新版本:

    pip install --upgrade tweepy
    
  2. 切换到Twitter API v2的过滤流实现
    v2 API使用StreamingClient替代旧的StreamListener,且需使用Bearer Token认证,示例代码如下:

    import tweepy
    
    class TweetListener(tweepy.StreamingClient):
        def on_tweet(self, tweet):
            # 自定义处理推文逻辑
            print(tweet.text)
    
    if __name__ == '__main__':
        bearer_token = "你的v2 API Bearer Token"
        search_term = "your_search_keyword"
        
        twitter_stream = TweetListener(bearer_token)
        # 添加流过滤规则
        rule = tweepy.StreamRule(search_term)
        twitter_stream.add_rules(rule)
        # 启动流,可指定需要返回的字段
        twitter_stream.filter(tweet_fields=["created_at", "author_id"], languages=["en"])
    
  3. 确认认证信息匹配API版本

    • v1.1 API:使用consumer key、consumer secret、access token、access token secret
    • v2 API:使用Bearer Token(需在Twitter开发者平台生成)
  4. 修正代码语法错误
    移除原代码中twitter_stream.start_streaming_tweets(search_term)末尾的多余双引号。

内容的提问来源于stack exchange,提问作者iheb akermi

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.23 20:22:26