问答

人在海外,怎么让 AI 读到国内版小红书的数据?

简短回答

别让智能体自己开网页,改成通过接口读小红书:okdata 在任何国家都能返回小红书公开笔记,不需要小红书账号,也不需要国内手机号。按关键词搜一次 $0.02,约 20 篇;热点话题榜每次 $0.02。

一个在新加坡的品牌团队,想让调研智能体每周回答一个问题:国内女生最近在小红书上怎么聊防晒。智能体跑在美国弗吉尼亚的服务器上。基于浏览器的小红书工具从海外 IP 打开会被跳转到 RedNote,注册账号一般又要国内手机号。两个问题一起绕开的办法,是别再让智能体开网页:它调接口,接口去读小红书公开页面,智能体不管跑在哪儿都拿到同样的 JSON。

大部分调研靠这三个接口

一定用中文搜。笔记绝大多数是中文写的,搜防晒霜得到的结果比搜 sunscreen 多得多。可以让模型在进来时把英文需求翻成中文关键词,出去时再用英文写总结,并附上中文原句。

每周扫一次,花多少

任务 调用次数 费用
10 个中文关键词,各翻 2 页 20 $0.40
热点话题,一周每天看一次 7 $0.14
点赞最高的 30 篇读全文 30 $0.60
整个周度扫描 57 {{cost:xiaohongshu.notes.search20+xiaohongshu.trends.list7+xiaohongshu.notes.get*30}}

价格以美元计。余额预充值,海外团队用银行卡就行,支付宝、微信支付也可以;新 key 自带 $0.10 试用额度。

代码

import os, requests

API = "https://api.okdata.online"
H = {"Authorization": f"Bearer {os.environ['OKDATA_API_KEY']}"}

def notes(query, pages=2):
    cursor, out = None, []
    for _ in range(pages):
        params = {"query": query, "sort": "popular",
                  "fields": "id,url,title,text,metrics.likes,metrics.favorites,published_at"}
        if cursor:
            params["cursor"] = cursor
        body = requests.get(API + "/v1/xiaohongshu/notes/search", headers=H, params=params, timeout=60).json()
        if body["code"] != "ok":
            raise RuntimeError(f"{body['code']}: {body['message']}")
        out += body["data"]["items"]
        if not body["page"]["has_more"]:
            break
        cursor = body["page"]["next_cursor"]
    return out

batch = notes("防晒霜 推荐")
print(len(batch), "篇,交给模型:用英文总结,引用中文原文")

容易卡住的地方

  • 小红书不显示浏览量,metrics.views 是 null。排序看点赞、收藏和评论就够了。
  • 每翻一页单独计费。周度阅读的话,每个关键词两页通常够用。
  • 只返回公开笔记,登录后才能看的内容和私信都拿不到。
  • 数据在你调用时实时读取,meta.fetched_at 会告诉智能体数据有多新。

其他路子

请国内同事用自己的账号手动搜,对一次性的问题往往就够了。千瓜、新红这类国内数据平台适合想看图表和博主榜单、不想碰原始数据的团队,不过界面是中文的,而且按月付费。智能体的接入方式见 MCP 页,这类问题的更多玩法见热点与趋势方案。

更新于