只记得个大概,怎么把那个推特账号找出来
只记得个大概,怎么把那个推特账号找出来
你大概知道自己在找谁。可能记得显示名、可能记得一半的用户名,也可能只记得"他写供应链的,头像是只猫"。
X 的搜索框是为找推文设计的。输入一个人名,你会得到一堵提到这个名字的推文墙,而那个账号本身被埋在下面某处 —— 或者根本没显示。
找人和找推文是两种不同的操作,而搞清楚自己在做哪一种,直接决定了什么办法有效。
People 标签一直都在,但没人用
这一页最有用的一件事:任何一次搜索之后,在 Latest 和 Top 旁边都有一个 People(用户)筛选。
那个标签搜的是账号 —— 显示名、用户名和简介文本 —— 而不是推文内容。如果你在找人,这一页其它所有内容都只是优化手段;这一条才是解法。
★大多数"我找不到这个账号"的问题,点一下那个标签就解决了。★(如果你要的是可重复的批量查询而不是找一次,有接口可以做。)
一个资料页上有哪些内容是可搜的
值得知道,因为它决定了你能凭什么去搜:
- 用户名(
@username)—— 唯一的那个 - 显示名 —— 不唯一,可以随便改
- ★简介文本★ —— 被低估的那个,也是"用关键词找人"能奏效的根本原因
- 所在地 —— 用户自己填的自由文本,所以很不规范
不可搜的: 他关注了谁、从这个界面看他的历史推文,以及任何他没写在资料页上的东西。
⚠️ 显示名不等于身份。 任何人都能把显示名设成任何字样。两个账号显示同一个名字是正常现象,而冒充也常见到:永远不要仅凭显示名就判定一个账号是它声称的那个人。用户名才是标识符,其余都是装饰。
凭模糊印象找人
你大概记得用户名。 直接把猜测打进 x.com/你猜的名字。猜错会是 404,但用户名往往猜得八九不离十 —— 而且 People 标签会把接近的结果找出来。
你记得名字但不记得用户名。 搜名字,点 People。如果匹配太多,加一个他简介里会有的区分词:jane smith logistics。
你只记得他写什么。 搜一个简介里典型会出现的短语,然后用 People。写供应链的人,简介里往往就有"supply chain"。 这个办法比人们预期的有效,因为简介很短、关键词密度高。
你有一条推文但不知道作者。 作者就在推文上。如果你看的是截图,那就把里面一句独特的话加英文双引号搜 —— "那句原话" —— 只要原推还在就能找到。
你知道他回复过某人。 to:那个账号 加一个关键词,能很快把一段对话圈出来。要组合多个操作符的话,见这类操作符。
用代码来做
两个不同的调用,而选错是这里最常见的错误。
已知用户名做查询 —— 你有 username,想拿资料:
import requests
BASE = "https://api.socialapi.tech"
KEY = "your_api_key"
HDRS = {"X-API-Key": KEY}
def get_profile(username):
r = requests.get(
f"{BASE}/v1/user/info",
params={"username": username},
headers=HDRS,
timeout=60,
)
if r.status_code == 404:
return None # 该用户名不存在
r.raise_for_status()
return r.json()["data"]
p = get_profile("nasa")
print(f"{p['display_name']} (@{p['username']})")
print(f" {p['followers_count']:,} 粉丝 · 关注 {p['following_count']:,}")
print(f" 注册于 {p['created_at']} · {p['location']}")
print(f" {p['bio']}")
搜索账号 —— 你不知道用户名,想要候选列表:
def find_accounts(query, limit=20):
r = requests.get(
f"{BASE}/v1/search/user",
params={"query": query, "limit": limit},
headers=HDRS,
timeout=60,
)
r.raise_for_status()
return r.json()["data"]
for acct in find_accounts("supply chain analyst"):
badge = "✓" if acct["blue_verified"] else " "
print(f"{badge} @{acct['username']:<20} {acct['followers_count']:>9,} {acct['bio'][:60]}")
★关键区别:查询接收一个用户名、返回一个资料;用户搜索接收自由文本、返回候选。 已经知道用户名却去用搜索,更慢也更不准;而在瞎猜的时候用查询,只会拿到一串 404。★
怎么分辨真号和假号
如果你找这个账号是为了采取行动 —— 合作、付款、发工单 —— 那么验证比搜索更重要。
真正有用的信号:
| 信号 | 它说明什么 |
|---|---|
| 用户名 | 唯一标识符。要逐字符比对。 |
注册时间(created_at) |
一个上周注册、却声称是老牌品牌的账号,是危险信号 |
| 粉丝/关注比 | 大量关注别人却没什么人回关,是假号的常见形态 |
| 发帖历史 | 声称存在多年却空空如也或全是新帖,自相矛盾 |
blue_verified |
说明订阅有效。它本身不是身份核验 |
⚠️ 认证标已经不再意味着"这就是他声称的那个人"(2023 之前是)。它意味着有人在付费。verified_type 能区分企业和政府账号,这个分量更重些,但单独一个蓝标是很弱的证据。
★近似用户名是标准骗术★:@company_support 对 @company_supp0rt。字符替换扫一眼很难发现,而这正是大多数冒充的实现手段。在重要的时候,逐字符比对用户名。
大家会问的问题
怎么在推特上搜一个人? 搜他的名字,然后点 **People(用户)**标签。那个标签搜的是账号,不是推文。
怎么找到某人的推特用户名? 搜他的真名再看 People。如果能找到,他就在那儿。找不到的话,他的用户名可能和真名毫无关系。
能搜推特简介吗? 能 —— 简介文本会被账号搜索索引。搜一个职位或话题,能找到这样自我描述的人。
能用邮箱或手机号找推特账号吗? 搜索里不行。X 曾支持通讯录发现,但那不是一个公开搜索功能。
我确定存在的账号为什么找不到? 可能是:用户名改了、账号受保护、被封或被删,或者你停在推文标签而不是 People。
怎么看某人的第一条推文? 翻到他时间线的最末端。只对发帖不多的账号可行 —— 见找回老推文。
显示名和用户名有什么区别? 用户名唯一,标识这个账号。显示名是自由文本、可随时改、不唯一。
两个账号能重名吗? 显示名可以,随便重。用户名不行。
怎么验证一个账号是真的? 逐字符核对用户名、看注册时间、看发帖历史,以及看有没有其它可信账号在和它互动。光看蓝标不够。
现在蓝标是什么意思?
一个生效中的订阅。它不是 2023 之前那种身份核验。 企业和政府的 verified_type 分量更重。
怎么按地区找账号? 所在地是简介里的自由文本,所以搜城市名能找到填了它的人。很不规范 —— 很多人留空或者填个玩笑。
能按粉丝数搜账号吗?
界面里不能直接筛。用代码可以先搜索,再对结果按 followers_count 过滤。
怎么找相似的账号? 资料页上 X 的"你可能喜欢"是内建入口。用代码的话,搜那个领域标志性的简介关键词效果很好。
能看到谁关注了某人吗? 公开账号可以,粉丝列表是分页的。见持续追踪粉丝变化。
怎么只搜认证账号?
界面没有这个筛选。用代码可以搜索后按 blue_verified 过滤。
推特用户 ID 是什么? 一个永久的数字标识。★和用户名不同,它永远不变★ —— 所以如果你要留存记录,存 ID 而不是存用户名才是对的做法。
能用 ID 反查账号吗? 能,而且这是重新找回一个改过用户名的账号的可靠办法。
用户名为什么会变? 有人改品牌,或者释放了一个用户名被别人抢注。这正是 ID 才是稳定引用的原因。
能找到已删除的账号吗? 不能。已删除或被封的账号连同它的推文一起从搜索里消失。
能搜到受保护的账号吗? 它们会出现在账号搜索里,但你不是被批准的关注者就读不到它的推文。
一次能查多少个账号? 一次查询查一个。要查一批就迭代 —— 并且把 ID 存下来,这样只需要查这一次。
怎么找在讨论某个话题的账号? 这是两个不同的问题:简介里提到它的账号(用户搜索)vs 此刻正在发帖讨论它的账号(关键词监控)。通常你要的是后者。
怎么搜索一个推特账号? 搜用户名或显示名。 ★用户名是精确匹配;显示名是模糊匹配★ —— 这正是前者返回一个结果、后者返回几十个的原因。
有推特账号查找工具吗? 平台自己的用户搜索就是那个查找工具。 ★第三方"查找器"大多只是把同样的公开结果重新呈现一遍★ —— 区别在于能不能规模化地做。
怎么查一个推特账号? 知道用户名就用用户名,不知道就用姓名或简介文本。 ★没有别的东西能解析到一个账号★ —— 邮箱不行,手机号也不行。
推特账号 lookup 是什么? 把一个标识符解析成一个资料页。 用户名 → 资料页可以;★邮箱 → 资料页不行★。
怎么确认一个推特账号是否存在? 去请求那个资料页。 ★404 意味着已删除、被封或改名 —— 而这三种从外部无法区分★,这一点绊倒过大多数脚本。
怎么按姓名找推特用户? 搜显示名。 姓名并不唯一,所以要预期返回多个,再用简介和粉丝数来区分。
怎么搜一个用户名? 用户名是精确的。 如果什么都没返回,说明这个用户名不存在 —— ★尽管它可能曾经存在过然后被改掉了★。
能在某个账号内部搜索他的推文吗?
能 —— 在高级搜索里把 from:用户名 和你的关键词组合。★那是和资料搜索不同的一个调用。★
怎么搜某人的推文?
要么翻他的时间线在本地过滤,要么在搜索里用 from:。 ★时间线翻页能回溯得比搜索更远。★
有推特资料搜索吗? 有,覆盖用户名、显示名和简介文本。 ★它不搜索帖子正文★ —— 那是另一个端点。
推特账号查看器是什么? 通常就是一个资料页读取器。 ★任何宣称能看私密账号的都在歪曲自己做的事★ —— 为什么。
不知道用户名怎么找到某人的推特? 搜他的真实姓名,再用简介、粉丝数和帖子来确认。 ★要预期存在歧义 —— 这是靠证据做身份识别,不是查询。★
能按粉丝数搜索账号吗? 不能作为过滤条件。 ★先取回候选,再在本地排序★ —— 粉丝数在每个资料页上都有。
能按地点搜索账号吗? 只能用自称的简介字段,而它是未经验证的自由文本 —— 完整的注意事项。
怎么找一个改过名的账号? ★用它的数字 ID,那个永远不变★ —— 为什么 ID 才是稳定标识符。
一次能查多少个账号? 批量查。 ★一个批量调用在延迟和成本上都优于多次单查。★
如果你要做账号查询功能
站得住的模式是:★搜一次、把 ID 存下来、之后都按 ID 查。★
用户名会变,显示名会变,数字 ID 不会。以用户名为键的系统会在别人改名时悄悄坏掉,而且故障看起来像"这个账号消失了",而不是"这个账号改名了"。
这正是我们的 API 支持的 —— 自由文本搜账号、按用户名或按 ID 查资料,每条结果都带粉丝数、简介、注册时间和认证状态。只读、固定按次价格、没有属于你的限流要管。
查询执行了但没查到内容仍会计费,因为那份工作确实发生了。发出前就被我们拒绝的请求、以及我方原因的错误,不计费。