前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >用python开发的小红书评论批量采集软件,高效挖掘评论数据价值

用python开发的小红书评论批量采集软件,高效挖掘评论数据价值

原创
作者头像
python迷3016
发布2025-03-31 09:08:33
发布2025-03-31 09:08:33
13100
代码可运行
举报
运行总次数:0
代码可运行

本软件工具仅限于学术交流使用,严格遵循相关法律法规,符合平台内容合法性,禁止用于任何商业用途!

零、前言

在当下的互联网环境中,小红书作为国内极具影响力的社区种草平台,日活跃度极高,笔记评论区蕴含着海量有价值的信息。在合法合规、遵循平台规则且尊重用户隐私的前提下,对这些评论数据进行采集分析,能助力企业精准把握消费者的喜好、需求和购买意向。基于此需求,一款名为 xhs_search_comment_tool 的采集小红书评论区界面软件开发完成,如下:

软件运行界面
软件运行界面

采集到的部分评论数据:

评论.csv
评论.csv

一、软件核心亮点

1.1 合规采集

该软件严格按照小红书平台公开的接口规范和数据使用政策开发,确保数据采集行为合法合规。提供两种采集模式:

  1. 根据关键词采集评论,输入笔记关键词获取笔记链接,进而提取评论信息;
  2. 根据用户提供的合法笔记链接采集评论。

1.2 筛选功能

支持按关键词、评论时间、IP 属地等多种条件筛选评论,还能依据平台允许的笔记类型(综合 / 视频 / 图文)和排序方式(综合 / 最新 / 最热)获取数据。同时,在平台规则允许范围内,可设置多个笔记关键词、笔记链接、评论关键词和 IP 属地。

1.3 便捷操作

Windows 用户无需搭建 Python 运行环境,直接双击即可打开使用。软件在操作过程中,每爬取一页数据就会保存一次 csv 文件,防止因异常中断导致数据丢失,且爬取时每条数据间隔 1 - 2s,减轻对平台服务器的压力。此外,爬取过程有详细的 log 文件记录,方便回溯,同时确保记录内容符合平台隐私政策。

二、软件技术剖析

2.1 技术栈

软件全部模块采用 Python 语言开发。其中,tkinter 用于构建 GUI 软件界面,为用户提供直观的操作窗口;requests 负责通过合法合规的接口进行爬虫请求;json 用于解析响应数据;pandas 用于保存 csv 结果和数据清洗;logging 用于日志记录,且确保记录内容符合平台与法律规定。

2.2 核心代码

软件界面部分源代码:

代码语言:python
代码运行次数:0
运行
复制
# 创建主窗口
root = tk.Tk()
root.title('爬小红书搜索评论软件v1.8')
# 设置窗口大小
root.minsize(width=900, height=650)

爬虫发送请求部分源代码:

代码语言:python
代码运行次数:0
运行
复制
# 发送请求
r = requests.get(url, headers=h1)
# 接收响应数据
json_data = r.json()

保存数据部分源代码:

代码语言:python
代码运行次数:0
运行
复制
# 保存数据到DF
df = pd.DataFrame(
    {
        '笔记链接': 'https://www.xiaohongshu.com/explore/' + note_id,
        '笔记链接_长': note_url2,
        '页码': page,
        '评论者昵称': nickname_list,
        '评论者id': user_id_list,
        '评论者主页链接': user_link_list,
        '评论时间': create_time_list,
        '评论IP属地': ip_list,
        '评论点赞数': like_count_list,
        '评论级别': comment_level_list,
        '评论内容': content_list,
    }
# 保存到csv
df.to_csv(self.result_file2, mode='a+', header=header, index=False, encoding='utf_8_sig')

日志模块部分源代码:

代码语言:python
代码运行次数:0
运行
复制
def get_logger(self):
    self.logger = logging.getLogger(__name__)
    # 日志格式
    formatter = '[%(asctime)s-%(filename)s][%(funcName)s-%(lineno)d]--%(message)s'
    # 日志级别
    self.logger.setLevel(logging.DEBUG)
    # 控制台日志
    sh = logging.StreamHandler()
    log_formatter = logging.Formatter(formatter, datefmt='%Y-%m-%d %H:%M:%S')
    # info日志文件名
    info_file_name = time.strftime("%Y-%m-%d") + '.log'
    # 将其保存到特定目录,ap方法就是寻找项目根目录,该方法博主前期已经写好。
    case_dir = r'./logs/'
    info_handler = TimedRotatingFileHandler(filename=case_dir + info_file_name,
                                            when='MIDNIGHT',
                                            interval=1,
                                            backupCount=7,
                                            encoding='utf-8')
    self.logger.addHandler(sh)
    sh.setFormatter(log_formatter)
    self.logger.addHandler(info_handler)
    info_handler.setFormatter(log_formatter)
    return self.logger

三、软件使用指南

3.1 准备工作

开始采集前,需要按照平台规定的合法方式获取自己的 cookie 值,并填入 cookie.txt 文件。

cookie获取方法
cookie获取方法

3.2 根据关键词爬评论

在软件界面的左上区填写平台规则允许范围内的笔记筛选项,右上区填写符合平台规定的评论筛选项,点击相应按钮即可进行合规的数据采集。其爬取思路是先通过合法输入笔记关键词获取平台允许访问的笔记链接,再提取允许采集的评论。

3.3 根据笔记链接爬评论

在软件界面的中上区填写合法合规的笔记链接,右上区填写评论筛选项,点击对应按钮进行数据采集。此模式是直接利用用户提供的合法笔记链接提取允许采集的评论。

四、作者声明

本软件工具仅限于学术交流使用,严禁用于任何商业用途。

软件首发公众号 “老男孩的平凡之路”,欢迎在合法合规的前提下交流探讨。

软件实际运行效果演示视频:https://www.bilibili.com/video/BV1uDtneqEhA

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 零、前言
  • 一、软件核心亮点
    • 1.1 合规采集
    • 1.2 筛选功能
    • 1.3 便捷操作
  • 二、软件技术剖析
    • 2.1 技术栈
    • 2.2 核心代码
  • 三、软件使用指南
  • 3.1 准备工作
  • 3.2 根据关键词爬评论
  • 3.3 根据笔记链接爬评论
  • 四、作者声明
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档