【GUI软件开发】小红书评论采集:自动采集1w多条,含二级评论!

news/发布时间2024/5/16 2:04:35

一、爬取目标

用python开发的爬虫采集软件,可自动抓取小红书评论区,并且含二级评论。

方便不懂编程代码的小白使用,无需安装python、无需改代码,双击打开exe即用!

1.1 效果截图

软件界面截图:

结果截图1:

结果截图2:

结果截图3:

1.2 演示视频

软件运行演示:【软件演示】小红书评论采集工具,可爬取上万条,含二级评论!

1.3 软件说明

几点重要说明:

  1. Windows用户可直接双击打开使用,无需Python运行环境,非常方便
  2. 需要填入cookie和爬取目标笔记链接
  3. 支持同时爬多个笔记的评论
  4. 可爬取10个关键字段,含:笔记链接,页码,评论者昵称,评论者id,评论者主页链接,评论时间,评论IP属地,评论点赞数,评论级别,评论内容。
  5. 评论中包含二级评论及二级展开评论。

二、代码讲解

2.1 爬虫采集模块

通过把已有代码部分封装成class类,供tkinter界面调用。

详细爬虫实现逻辑,请见:

【爬虫实战】用Python采集任意小红书笔记下的评论,爬了10000多条,含二级评论!

2.2 软件界面模块

软件界面采用tkinter开发。
主窗口部分:

# 创建日志目录
work_path = os.getcwd()
if not os.path.exists(work_path + "/logs"):os.makedirs(work_path + "/logs")
# 创建主窗口
root = tk.Tk()
root.title('小红书评论采集软件 | 马哥python说')
# 设置窗口大小
root.minsize(width=850, height=650)

填写cookie控件:

# 【填入Cookie】
tk.Label(root, justify='left', font=('微软', 14), text='个人Cookie:').place(x=30, y=75)
entry_ck = tk.Text(root, bg='#ffffff', width=110, height=2, )
entry_ck.place(x=30, y=100, anchor='nw')  # 摆放位置

填写笔记链接控件:

# 【笔记链接】
tk.Label(root, justify='left', font=('微软', 14), text='笔记链接:').place(x=30, y=145)
note_ids = tk.StringVar()
note_ids.set('')
entry_nt = tk.Text(root, bg='#ffffff', width=110, height=14, )
entry_nt.place(x=30, y=170, anchor='nw')  # 摆放位置

底部软件版权说明:

# 版权信息
copyright = tk.Label(root, text='@马哥python说 All rights reserved.', font=('仿宋', 10), fg='grey')
copyright.place(x=290, y=625)

以上。

2.3 日志模块

好的日志功能,方便软件运行出问题后快速定位原因,修复bug。
核心代码:

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'case_dir = r'./logs/'info_handler = TimedRotatingFileHandler(filename=case_dir + info_file_name,when='MIDNIGHT',interval=1,backupCount=7,encoding='utf-8')

日志文件截图:

三、获取源码及软件

Get完整源码:【GUI软件开发】小红书评论采集:自动采集1w多条,含二级评论!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ulsteruni.cn/article/85824532.html

如若内容造成侵权/违法违规/事实不符,请联系编程大学网进行投诉反馈email:xxxxxxxx@qq.com,一经查实,立即删除!

相关文章

关于昨天写的文件读写的一个巨大改进

在昨天写的文件读写的练习中,文件路径必须要一字不差的写出来,但是这种写法一旦文件换了位置,就会导致读写出错误所以我们用双下划线加dirname来进行文件路径表达

JAVA高级面向对象二:认识多态 多态的好处

1.多态:在继承/实现情况下的一种现象,表现为对象多态(儿子,学生),行为多态(跑的快慢) 方法编译看左边,运行看右边 变量编译看左边,运行看左边package com.itheima.多态;public class Test { //对象多态,行为多态 public static void main(String[] args) {…

前端基础之jQuery引入

一、jQuery介绍 (1)JavaScript库 JavaScript库:即 library,是一个封装好的特定的集合(方法和函数)。从封装一大堆函数的角度理解库,就是在这个库中,封装了很多预先定义好的函数在里面,比如动画animate、hide、show,比如获取元素等。简单理解: 就是一个JS 文件,里面…

多项式习题

P3338 [ZJOI2014] 力 给定数组 \(q\),有: \[E_j=\sum\limits_{i=1}^{j-1}\frac{q_i}{(i-j)^2}-\sum\limits_{i=j+1}^{n}\frac{q_i}{(i-j)^2} \]求数组 \(E\)。 首先把数组从 \(0\) 开始编号。 然后如果有数组 \(g_i=\dfrac{1}{i^2}\),\(g_0=1\),我们发现: \(E\) 的前半部分…

济南泰山攻略

济南 济南攻略 两天泰山 两三天第一天下午

vim编辑器无法鼠标右键粘贴,显示可视

vim /usr/share/vim/vim82/defaults.vim 将set mouse改为r,保存退出即可