如何获取 Serenity 在 X 上发布的推文与回复
在分析回复、cashtag 或市场反应之前,先要把一个基础问题讲清楚:Serenity 自己到底发过什么。
这里的 Serenity 指公开 X 账号 @aleabitoreddit。如果直接从回复区或全站关键词开始抓,很容易把别人对他的解读、转述和争论混进源数据。更稳的第一步,是先用 TwexAPI 的 Get All Tweets and Replies by User 端点拉取账号本人发布的公开推文与回复。
这个边界很重要:它会返回 Serenity 自己写的原创帖和回复,但不会返回其他用户在这些帖子下面的全部评论。如果要研究受众反应,需要先从这里选出一条 tweet_id,再进入回复分析流程。
先把它当作账号索引
账号索引 指一张“Serenity 本人发过什么”的基础表。它不是最终分析结果,而是后面所有流程的入口。
这份索引可以帮你回答三个更具体的问题:
| 你想知道什么 | 用索引怎么做 |
|---|---|
| Serenity 最近讲了哪些主题? | 搜索 text / full_text,按关键词或人工标签归类 |
| 哪些内容提到了股票代码? | 读取 cashtags,再进入 cashtag 追踪流程 |
| 哪条帖子值得分析回复? | 按 reply_count、quote_count 或正文中的明确观点筛选 |
第一次建议先取 100 条,确认字段结构和脚本输出都符合预期。如果目标是长期归档,不要把 count 一次性拉得很大,改用游标分页导出,这样任务中断后可以从最近的 cursor 继续。
API 端点
API 端点 指本篇用于获取账号本人公开内容的入口。screen_name 传不带 @ 的用户名,count 是最多返回多少条推文与回复。
GET https://api.twexapi.io/twitter/{screen_name}/tweets-replies/{count}
Authorization: Bearer <your_token>Serenity 的用户名是 aleabitoreddit。先使用适中的 count,确认脚本依赖的字段都存在。
curl --request GET \
--url https://api.twexapi.io/twitter/aleabitoreddit/tweets-replies/100 \
--header 'Authorization: Bearer <your_token>'Python 示例
Python 示例 指一个适合第一次试跑的最小脚本:先保存原始 JSON,再打印一小段摘要。这样你能先确认字段含义,不会太早把不稳定的字段结构写进数据库。
1import json
2import requests
3
4TOKEN = "<your_token>"
5url = "https://api.twexapi.io/twitter/aleabitoreddit/tweets-replies/100"
6
7response = requests.get(
8 url,
9 headers={"Authorization": f"Bearer {TOKEN}"},
10 timeout=30,
11)
12response.raise_for_status()
13
14payload = response.json()
15tweets = payload.get("data", [])
16
17with open("serenity-tweets.json", "w", encoding="utf-8") as output:
18 json.dump(tweets, output, ensure_ascii=False, indent=2)
19
20print(f"已保存 {len(tweets)} 条公开推文与回复")
21
22for tweet in tweets[:10]:
23 text = tweet.get("text") or tweet.get("full_text") or ""
24 print(
25 tweet.get("tweet_id"),
26 tweet.get("created_at_datetime"),
27 "reply" if tweet.get("in_reply_to") else "post",
28 tweet.get("cashtags", []),
29 text[:120],
30 )确认输出没问题后,再考虑把 tweet_id、时间、正文、互动指标和 in_reply_to 写入数据库。tweet_id 应该作为唯一键:重复抓到同一条内容时更新互动指标,而不是新增一条记录。
建议关注的响应字段
响应字段 指后续分析真正会用到的少数信息。不要一开始全部展开,先保留原始 JSON,再挑出会影响下一步判断的字段。
| 字段 | 用途 |
|---|---|
tweet_id | 用于回复分析和去重的稳定标识 |
text / full_text | 公开推文或回复正文 |
created_at_datetime | 时间线排序与时序分析 |
cashtags | 推文提到的股票代码 |
favorite_count、retweet_count、reply_count | 对比互动表现 |
in_reply_to | 区分 Serenity 自己的回复与原创帖 |
is_paid_promotion | 存在时可作为额外披露信号 |
接下来怎么用
接下来怎么用 指根据你要回答的问题,把同一份源帖索引分流到不同任务。不要把所有分析都塞进同一个脚本,先把源帖索引做干净,再进入下一步。
| 后续目标 | 推荐下一步 |
|---|---|
| 做长期、可恢复归档 | 使用游标分页导出 Serenity 推文 |
| 追踪 Serenity 提到的股票代码 | 阅读追踪 Serenity 相关 Cashtag |
| 分析某条帖子下的讨论质量 | 选定 tweet_id 后做回复分析 |
| 做内部看板或告警 | 每次抓取后按 tweet_id 去重,只推送新内容 |
相关资源
免责声明
免责声明 指本文只说明如何获取和整理公开 X 数据。文中涉及的账号、帖子、cashtag 或互动指标都不能直接作为投资依据。请独立核实相关观点,并遵守适用法律与 X 平台规则。