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

如何在@SpongeBob最新10条推文中筛选含"Bikini Bottom"的内容?

解决Twitter API按关键词筛选用户推文的问题

嘿,我来帮你搞定这个小麻烦!首先得指出你代码里的核心问题:你用的api.user_timeline方法本来就不是用来按关键词筛选的——它的作用就是获取指定用户的时间线推文,你把"Bikini Bottom"塞到第一个参数位置完全无效,加上screen_name已经指定了@SpongeBob,所以它只会乖乖返回该用户的最新10条推文,根本不会管关键词的事。

下面给你两种靠谱的解决方案:

方案1:本地筛选已获取的用户推文

先批量获取该用户的推文(建议多拿点,比如最多200条,因为user_timeline的count参数上限是200),然后在本地筛选包含目标关键词的内容,最后取前10条:

user = api.get_user('SpongeBob')
# 获取@SpongeBob的最新200条推文
public_tweets = api.user_timeline(screen_name="SpongeBob", count=200)
# 筛选包含"Bikini Bottom"的推文
filtered_tweets = [tweet for tweet in public_tweets if "Bikini Bottom" in tweet.text]
# 输出最多10条符合条件的推文
for tweet in filtered_tweets[:10]:
    print(tweet.text)

方案2:用搜索API直接精准查询(更高效)

如果想直接让API返回符合条件的结果,不用本地筛选,可以用Twitter的搜索API,构造查询语句指定用户和关键词,这样更省资源:

# 搜索@SpongeBob发布的、包含"Bikini Bottom"的最新10条推文
search_results = api.search_tweets(q='from:SpongeBob "Bikini Bottom"', count=10)
for tweet in search_results:
    print(tweet.text)

小提示:如果你用的是Twitter API v2版本(比如tweepy的v2客户端),方法名会变成client.search_recent_tweets,查询语法类似,但参数结构会有变化,不过如果是v1.1版本,上面的代码直接就能用~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 08:04:58