跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客我的书AI学习GitHub 精选镜像AI 生图工具UI配色美学关于
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
Python算法

Python 根据小红书关键词爬取笔记数据

利用 Python 脚本调用小红书搜索接口实现笔记数据批量爬取。流程涵盖 Cookie 配置、POST 请求构建、JS 变量解析及 Excel 导出。支持关键词搜索、翻页抓取、详情提取及图片链接保存。

云间漫步发布于 2026/3/21更新于 2026/10/2096 浏览
Python 根据小红书关键词爬取笔记数据

一、爬取目标

手动查看笔记效率较低,适合研究爆款笔记、做竞品分析或收集素材。本脚本支持根据关键词批量搜索并下载相关笔记,包含正文、互动数据及发布时间。

二、数据结果展示

字段包括:关键词、链接、链接 ID、昵称、帖子发布时间、笔记内容、点赞数、收藏数、评论数、分享数、图片链接。

所有数据自动保存为 Excel 文件。注意一个关键词通常只能爬取有限数量的评论(网页版限制)。

原理讲解
  1. 核心是调用小红书的搜索接口,它是一个 POST 请求。
  2. 需要获取有效的 Cookie(从网页版小红书开发者工具中抓取),这是拿到数据的关键。
  3. 通过接口拿到笔记 ID 列表后,再逐个访问笔记的详情页进行解析。

三、爬虫代码讲解

导入库:

import requests
import pandas as pd
import json
import time
from datetime import datetime
from lxml import etree
3.1 核心思路与配置

运行此脚本需要关键参数:Cookie。建议登录小红书网页版,在开发者工具里抓取。

为了方便管理多个关键词和 Cookie,设计使用 Excel 文件来配置:

  • 搜索词.xlsx:一行一个,放置想搜的关键词。
  • cookie.xlsx:一行一个,放置你的 Cookie(程序支持多个 Cookie 自动切换)。
3.2 关键步骤:搜索并翻页

向小红书搜索接口发送请求的核心代码,支持按'最新'、'综合'等方式排序。

json_data = {
    'keyword': '春日穿搭',  # 你的关键词
    'page': 1,              # 第几页
    'page_size': 20,        # 每页 20 条
    'sort': 'time_descending'  # 按最新排序
}
response = requests.post(
    'https://edith.xiaohongshu.com/api/sns/web/v1/search/notes', 
    json=json_data, 
    headers=headers
)
notes_list = response.json()['data']['items']  # 拿到笔记列表
3.3 关键步骤:提取详情与图片链接

拿到笔记 ID 后,访问详情页,并解析包含所有数据的 JS 变量。

# 1. 从 JS 代码段中提取数据
content_raw = response_detail.text.split('window.__INITIAL_STATE__=')[1].split('</script>')[0]
parsed_data = json.loads(content_raw)  # 解析成字典

# 2. 从字典里取出各种数据
note_data = parsed_data['note']['noteDetailMap'][note_id]
title = note_data['note']['title']  # 标题
liked_count = note_data['note']['interactInfo']['likedCount']  # 点赞数

# 3. 提取所有高清图片链接
image_urls = []
for image in note_data['note']['imageList']:
    img_url = image['infoList'][0]['url']
    image_urls.append(img_url)

四、如何运行?

  1. 准备好 搜索词.xlsx 和 cookie.xlsx 文件。
  2. 安装依赖:pip install requests pandas lxml openpyxl
  3. 运行主函数 main(),程序会询问每个关键词想爬多少条,然后生成 Excel 文件。
  4. 程序会自动执行:读取关键词 -> 调用搜索接口 -> 翻页 -> 解析每篇笔记详情 -> 保存到表格。

目录

  1. 一、爬取目标
  2. 二、数据结果展示
  3. 原理讲解
  4. 三、爬虫代码讲解
  5. 3.1 核心思路与配置
  6. 3.2 关键步骤:搜索并翻页
  7. 3.3 关键步骤:提取详情与图片链接
  8. 1. 从 JS 代码段中提取数据
  9. 2. 从字典里取出各种数据
  10. 3. 提取所有高清图片链接
  11. 四、如何运行?

更多推荐文章

查看全部
  • 从零入门大模型:核心书籍推荐与技术路径详解
  • AI 绘图硬件指南:Stable Diffusion 电脑配置选择与优化
  • 剑指 Offer 动态规划与记忆化搜索解题总结
  • 别再盲目追“智能”:我与机器人打交道的 3 年,藏着最真实的科技温度
  • 基于 C++11 手写前端 Promise 实现
  • GitHub Copilot 实战指南:提升 Python 开发效率的 AI 助手
  • 5 款 Stable Diffusion 云端协作平台推荐
  • Arthas 实战:结合 IDEA 的 Java 线上排查流程
  • HarmonyOS NEXT 能否打破操作系统三分天下?生态与路线图解析
  • Obsidian Text Generator 插件:AI 文本生成与配置指南
  • AI 生成 UI 工具评测与工程化实践指南
  • ComfyUI 深度解析:高性能 AI 绘画工作流实践
  • Git 分支管理实战指南
  • VectorBT 量化框架:向量化回测与性能优化详解
  • Whisper 模型怎么选:尺寸对比、下载地址和校验方法
  • Mem0 开源本地 AI 智能体长期记忆系统原理与实战
  • Python pip 配置国内镜像源方法(清华/阿里云/中科大)
  • Android WebView 版本升级方案详解
  • LangChain4j 集成 Spring Boot 完整教程
  • AI视频生成工具清单及免费额度说明

相关免费在线工具

  • 加密/解密文本

    使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online

  • Gemini 图片去水印

    基于开源反向 Alpha 混合算法去除 Gemini/Nano Banana 图片水印,支持批量处理与下载。 在线工具,Gemini 图片去水印在线工具,online

  • curl 转代码

    解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

  • Base64 文件转换器

    将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online

  • Markdown转HTML

    将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online