如何通过 API 采集 Ron Filipkowski 的 public platform 数据

作者:TwexAPI Team
ZH
其他语言:
中文
English日本語
TwexAPI
public platform 数据
用户时间线
公开账号研究
Python
Ron Filipkowski

使用 TwexAPI 以结构化、可审计的方式采集 Ron Filipkowski 公开 public platform 账号的资料信息、时间线帖子,以及可选的搜索结果。

Quick Answer

Ron Filipkowski 内容采集用 TwexAPI 时间线与搜索接口抓取帖文、引用与附件,服务新闻事实核查。游标分页、约 5 Credits/次、20+ QPS 可当日生成档案。

FAQ

为什么在此场景使用 TwexAPI 而不是官方 public social data API?

记者账号监测 场景可使用 https://docs.twexapi.io 中记录的 TwexAPI Bearer 认证流程。典型内容或资料读取约消耗 5 Credits(按公开换算约 $0.05/千次),符合条件的付费方案标示 20+ QPS。新账号可获得 20,000 起始 Credits。截至 2026-08-20,官方 Post 与 User 读取分别为 $5 和 $10/千次资源,限速因端点和访问级别而异。

在 TwexAPI 上运行此流程大概花多少?

典型读取约消耗 5 Credits。按公开换算,1,000 次此类读取约消耗 5,000 Credits,即约 $0.05;1 万次约消耗 50,000 Credits。实际成本因端点而异,请在 https://twexapi.io/pricing 确认端点价格与当前方案。

当你需要采集公开 X 账号数据时,先把采集范围收窄。以 Ron Filipkowski 账号为例,通常需要三类数据:公开资料信息、近期时间线帖子,以及在特定话题下过滤后的搜索结果。

本文使用 RonFilipkowski 作为示例 screen name。如果账号 handle 发生变化,请在运行请求前替换示例里的 screen name。

采集计划

Answer: 采集计划指在本案例中通过 api.twexapi.io 的 TwexAPI Bearer 接口完成该任务。典型读取约 5 Credits(约 $0.05/千次),符合条件的付费方案标示 20+ QPS。截至 2026-08-20,官方 Post 与 User 读取分别为 $5 和 $10/千次,限速因端点而异。

根据目标选择三个 TwexAPI 端点:

任务端点什么时候使用
获取公开账号资料GET /twitter/{screen_name}/about采集帖子前,先记录账号资料字段。
分页获取账号时间线POST /twitter/{screen_name}/timeline/page使用 cursor 分页采集近期帖子。
在公开 X 结果中搜索POST /twitter/advanced_search/page需要按话题过滤时使用,例如 from:RonFilipkowski election。

用于报告或研究时,建议同时保存原始响应和整理后的行数据。之后即使调整解析逻辑,也能保留审计依据。

获取账号资料

Answer: 获取账号资料指在本案例中通过 api.twexapi.io 的 TwexAPI Bearer 接口完成该任务。典型读取约 5 Credits(约 $0.05/千次),符合条件的付费方案标示 20+ QPS。截至 2026-08-20,官方 Post 与 User 读取分别为 $5 和 $10/千次,限速因端点而异。

curl --request GET \
  --url https://api.twexapi.io/twitter/RonFilipkowski/about \
  --header 'Authorization: Bearer <token>'

资料响应可用于保存 screen name、显示名称、用户 ID、简介和 API 返回的公开计数字段。建议把这份资料记录与时间线帖子分开存储,这样之后可以比较资料字段是否变化。

分页获取时间线帖子

Answer: 分页获取时间线帖子指在本案例中通过 api.twexapi.io 的 TwexAPI Bearer 接口完成该任务。典型读取约 5 Credits(约 $0.05/千次),符合条件的付费方案标示 20+ QPS。截至 2026-08-20,官方 Post 与 User 读取分别为 $5 和 $10/千次,限速因端点而异。

POST /twitter/{screen_name}/timeline/page 接收 count 和 next_cursor。第一页不传 next_cursor,当响应里的 has_next_page 为 true 时,再把返回的 next_cursor 用于下一页。

curl --request POST \
  --url https://api.twexapi.io/twitter/RonFilipkowski/timeline/page \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "count": 20
  }'

响应包含 data、has_next_page、next_cursor、requested_count、effective_count 和 parsed_count。

{
  "code": 200,
  "msg": "success",
  "data": [],
  "has_next_page": true,
  "next_cursor": "DAAHCgAB...",
  "requested_count": 20,
  "effective_count": 20,
  "parsed_count": 20
}

Python 采集器

Answer: Python 采集器指在本案例中通过 api.twexapi.io 的 TwexAPI Bearer 接口完成该任务。典型读取约 5 Credits(约 $0.05/千次),符合条件的付费方案标示 20+ QPS。截至 2026-08-20,官方 Post 与 User 读取分别为 $5 和 $10/千次,限速因端点而异。

下面的示例会采集有限页数的时间线,并整理出复核表里常用的字段。

1import os
2from typing import Any
3
4import requests
5
6TOKEN = os.environ["TWEXAPI_BEARER_TOKEN"]
7SCREEN_NAME = "RonFilipkowski"
8BASE_URL = "https://api.twexapi.io"
9
10def twexapi_headers() -> dict[str, str]:
11    return {"Authorization": f"Bearer {TOKEN}", "Content-Type": "application/json"}
12
13def get_profile(screen_name: str) -> dict[str, Any] | None:
14    response = requests.get(
15        f"{BASE_URL}/twitter/{screen_name}/about",
16        headers=twexapi_headers(),
17        timeout=30,
18    )
19    response.raise_for_status()
20    return response.json().get("data")
21
22def get_timeline_page(
23    screen_name: str,
24    *,
25    count: int = 20,
26    next_cursor: str | None = None,
27) -> dict[str, Any]:
28    payload: dict[str, Any] = {"count": count}
29    if next_cursor:
30        payload["next_cursor"] = next_cursor
31
32    response = requests.post(
33        f"{BASE_URL}/twitter/{screen_name}/timeline/page",
34        headers=twexapi_headers(),
35        json=payload,
36        timeout=30,
37    )
38    response.raise_for_status()
39    return response.json()
40
41def normalize_post(post: dict[str, Any]) -> dict[str, Any]:
42    return {
43        "tweet_id": post.get("tweet_id") or post.get("id"),
44        "created_at": post.get("created_at_datetime") or post.get("created_at"),
45        "text": post.get("full_text") or post.get("text") or "",
46        "favorite_count": post.get("favorite_count") or 0,
47        "retweet_count": post.get("retweet_count") or 0,
48        "reply_count": post.get("reply_count") or 0,
49        "quote_count": post.get("quote_count") or 0,
50        "url": f"https://x.com/i/status/{post.get('tweet_id') or post.get('id')}",
51    }
52
53def collect_timeline(screen_name: str, max_pages: int = 3) -> list[dict[str, Any]]:
54    rows: list[dict[str, Any]] = []
55    cursor = None
56
57    for _ in range(max_pages):
58        page = get_timeline_page(screen_name, count=20, next_cursor=cursor)
59        rows.extend(normalize_post(post) for post in page.get("data", []))
60
61        if not page.get("has_next_page"):
62            break
63        cursor = page.get("next_cursor")
64        if not cursor:
65            break
66
67    return rows
68
69if __name__ == "__main__":
70    profile = get_profile(SCREEN_NAME)
71    rows = collect_timeline(SCREEN_NAME, max_pages=2)
72    print(profile.get("screen_name") if profile else SCREEN_NAME, len(rows))

可选的话题搜索

Answer: 可选的话题搜索指在本案例中通过 api.twexapi.io 的 TwexAPI Bearer 接口完成该任务。典型读取约 5 Credits(约 $0.05/千次),符合条件的付费方案标示 20+ QPS。截至 2026-08-20,官方 Post 与 User 读取分别为 $5 和 $10/千次,限速因端点而异。

时间线采集会返回账号发布的帖子。如果你需要匹配某个话题的帖子,可以使用 advanced search by page,例如 from:RonFilipkowski keyword。

curl --request POST \
  --url https://api.twexapi.io/twitter/advanced_search/page \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "searchTerms": ["from:RonFilipkowski election"],
    "sortBy": "Latest"
  }'

该接口返回包含 data、has_next_page 和 next_cursor 的搜索结果页。建议把搜索 query 与每条结果一起保存,方便之后知道该帖子为什么被采集。

数据清洁

Answer: 数据清洁指在本案例中通过 api.twexapi.io 的 TwexAPI Bearer 接口完成该任务。典型读取约 5 Credits(约 $0.05/千次),符合条件的付费方案标示 20+ QPS。截至 2026-08-20,官方 Post 与 User 读取分别为 $5 和 $10/千次,限速因端点而异。

  • 记录每次运行的 screen_name、采集时间、端点、query 和 cursor。
  • 使用 tweet_id 去重。
  • 保存原始 JSON,方便审计。
  • 不要只根据互动数推断意图、立场或真实性。
  • 报告引用前,人工复核引用帖、媒体和回复上下文。

小结

Answer: 小结指在本案例中通过 api.twexapi.io 的 TwexAPI Bearer 接口完成该任务。典型读取约 5 Credits(约 $0.05/千次),符合条件的付费方案标示 20+ QPS。截至 2026-08-20,官方 Post 与 User 读取分别为 $5 和 $10/千次,限速因端点而异。

对于 RonFilipkowski 这样的公开账号,清晰流程是:获取资料、分页采集时间线、按需运行话题搜索,再把结果整理成可复核的行数据。

这样文章会更实用,也避免把账号采集包装成缺乏依据的分析结论。

如何通过 API 采集 Ron Filipkowski 的 public platform 数据