小红书数据采集工具 xhs:从安装到出数据的完整路径
小红书数据采集工具 xhs从安装到出数据的完整路径【免费下载链接】xhs基于小红书 Web 端进行的请求封装。https://reajason.github.io/xhs/项目地址: https://gitcode.com/gh_mirrors/xh/xhs上周准备竞品账号周报时我花了一整个下午从网页上逐条抄笔记标题和点赞数评论区看到一半就放弃了。小红书数据采集工具 xhs 把这类工作变成一段能随时重跑的脚本它把小红书 Web 端的请求封装成库直接取回笔记详情、用户资料、多级评论等公开数据。适合有一点 Python 基础做内容运营、电商选品或舆情监控的人。 先把数据跑出来安装、签名与 Cookie动手看业务逻辑之前先让示例在你机器上跑起来。先准备两组命令环境要求 Python 3.7 及以上先装库本体pip install xhs还有一项前置依赖。小红书 Web 端的每个请求都带 x-s 签名相当于给请求做的防伪校验没法手工伪造库的方案是用 playwright 起一个无头浏览器由页面自己算出签名所以要装它并下载浏览器内核pip install playwright playwright installCookie 的三个字段从哪来库不要求你手写登录流程准备一份 Cookie 即可用浏览器打开小红书网页版登录后从开发者工具里复制完整 Cookie。其中a1、web_session、webId三个字段缺一不可缺任何一个请求都会校验失败。运行示例看输出示例目录里有多个可直接运行的脚本先看basic_usage.py把里面的 cookie 换成你自己的然后执行python example/basic_usage.py输出是一篇指定笔记的完整信息标题、正文、点赞数、收藏数、评论数、图片链接全部是结构化 JSON。很多找「小红书笔记数据 python」方案的开发者第一步应该都是先跑通这个示例接口细节在基础文档里。签名环节还有一件事要说明它偶尔会失败这属于正常现象示例代码里已经内置了失败重试如果失败频繁把示例中浏览器加载后的等待时间调大一些。 选题用关键词搜索找爆款笔记的规律最常用的用例是选题调研。get_note_by_keyword()按关键词搜索笔记配合按热度或时间的排序一批结果里就能看出哪些笔记数据好、标题和话题长什么样——对内容创作者和新媒体编辑来说发什么不再靠手感。搜索之外还有首页推荐流get_home_feed()可以拉取主页推荐流内容适合摸清某个大盘的内容分布。更完整的采集接口清单见爬取文档。 监控把竞品账号的更新装进表格目标如果是盯住某个账号的动态组合是两个接口先用get_user_notes()取该账号的发布列表再对列表里每篇笔记调用get_note_by_id()取它的点赞、收藏、评论数据。固定周期入库几周后竞品的更新节奏和内容规律就摆在眼前了。这一步最需要控制频率短时间密集拉取一个账号的全部笔记或每天定点跑任务都可能触发风控严重的会封 IP。请求之间留足间隔数据量不大时慢一点比断掉强。 评论与交互把用户的真实声音拿下来数据的价值往往不在笔记本身而在它下面的讨论。get_note_comments()拉取一篇笔记的评论列表get_note_sub_comments()深入某条根评论下的子评论两者配合能还原一篇笔记的完整讨论场景。如果你在找小红书评论采集接口这条链路就是完整的做产品口碑分析或用户画像这是最直接的原料。库也不止于「读」给笔记点赞、收藏、关注账号、发表评论都提供了现成方法。批量整理素材、标记关注的账号这类场景用得上这一层。⚙️ 进阶与边界签名服务和用法红线签名服务怎么起想在多个账号身份下采集或者把签名环节从业务代码里拆出去项目给了进阶做法把签名逻辑封装成独立服务业务脚本通过网络调用拿签名结果basic_sign_server.py就是对应示例。有一个坑多个账号共用同一个签名服务时Cookie 里的 a1 字段必须保持一致不一致会持续报签名错误。用法红线两条要记住。其一这是个人学习用途的开源作品只采集公开可访问的内容遵守法律法规和平台规则对目标网站别施加任何形式的压力。其二前面提到的风控不是吓唬人想要的数据越多请求频率越要压低。想拿完整源码和示例先执行git clone https://gitcode.com/gh_mirrors/xh/xhs然后打开示例目录把basic_usage.py里的 Cookie 换成自己的跑起来就能看到第一条数据如果不想从浏览器复制 Cookie可以先用login_qrcode.py扫码登录或login_phone.py手机号登录把身份准备好。创作者后台侧的用法看创作者文档。【免费下载链接】xhs基于小红书 Web 端进行的请求封装。https://reajason.github.io/xhs/项目地址: https://gitcode.com/gh_mirrors/xh/xhs创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考