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

Swift+Twift调用searchRecentTweets获取英文推文问题求助

Twift调用searchRecentTweets问题解决方案

1. 修复拼写错误与Set<Tweet.Field>参数设置

原代码中Set<weet.Field>存在拼写错误,正确写法为Set<Tweet.Field>,且不能直接传入类型,需指定具体要获取的推文字段集合。例如你需要获取推文文本和语言字段,可传入Set<Tweet.Field>([.text, .lang])。

2. 筛选英文推文

要仅获取英文推文,直接在搜索query中添加Twitter搜索运算符lang:en即可,比如将query设置为"Apple lang:en",Twift会将该参数传递给Twitter API,返回符合语言要求的推文。

修正后的完整代码

import UIKit
import Twift

class ViewController: UIViewController {

    @IBOutlet weak var backgroundView: UIView!
    @IBOutlet weak var textField: UITextField!
    @IBOutlet weak var sentimentLabel: UILabel!

    let twift = Twift(appOnlyBearerToken: myToken)
    
    override func viewDidLoad() {
        super.viewDidLoad()
        Task {
            do {
                let response = try await twift.searchRecentTweets(
                    query: "Apple lang:en",
                    fields: Set<Tweet.Field>([.text, .lang]),
                    maxResults: 100
                )
                
                if let tweets = response.data {
                    for tweet in tweets {
                        print(tweet.text)
                        print("推文语言:\(tweet.lang ?? "未知")")
                    }
                }
            } catch {
                print("请求失败:\(error.localizedDescription)")
            }
        }
    }
}

额外说明

  • 移除了无用的SwiftyJSON导入,Twift已内置数据解析能力
  • 补充了错误处理逻辑,避免未捕获异常导致程序崩溃
  • 可根据需求调整Set<Tweet.Field>中的字段,比如添加.createdAt获取推文发布时间等

内容的提问来源于stack exchange,提问作者Adi Elron

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 03:46:01