数据采集综合实践
| 项目信息 | 内容描述 |
|---|---|
| 课程 | 2025数据采集与融合技术 |
| 组名、项目简介 | 组名: 基米大哈气 项目背景: 针对B站视频评论信息量大、内容杂乱的问题,提供智能化的筛选与分类方案,帮助用户快速了解视频评论风向。 项目目标: 开发一个支持评论爬取、智能分类、违禁词管理及可视化分析的综合系统,实现对评论内容的精准筛选与多维度展示。 技术路线: 前端采用 React + React Router 实现组件化开发;后端使用 Flask + MySQL 管理数据与接口;核心算法基于本地部署的 Qwen2.5 大模型,并应用 LoRA 微调与 4位量化技术优化性能;系统最终部署于 华为云平台。 |
| 团队成员学号 | 102302113(王光诚)、102302115(方朴)、102302119(庄靖轩)、102302120(刘熠黄)、102302121(许友钿)、102302122(许志安)、102302123(许洋)、102302147(傅乐宜) |
| 这个项目的目标 | 1. 智能分类: 结合视频类型(如游戏、二次元),将评论自动归类为正常、争论、广告、@某人、无意义五大类。 2. 数据可视化: 提供评论统计、分类分布、高频词云及评论变化曲线图,直观展示数据特征。 3. 违禁词管理: 支持实时增删查改违禁词库,保障过滤机制的高效性。 4. 自动化爬取: 用户只需输入B站链接,系统即可自动抓取评论并进行智能处理,爬取过程中支持播放背景音乐。 |
| 其他参考文献 | [1]Joshua Ainslie, James Lee-Thorp, Michiel de Jong, Yury Zemlyanskiy, Federico Lebr´on, and SumitSanghai. GQA: Training generalized multi-query Transformer models from multi-head checkpoints. InEMNLP, pp. 4895–4901. Association for Computational Linguistics, 2023. |
| 码云链接(由于git上上传不了大于1GB的文件,所以我们将所有源码都放到了github上,小组成员间底代码不分开) | 项目代码(GitHub): https://github.com/liuliuliuliu617-maker/-/tree/master 项目演示网址: http://1.94.247.8/(31号前可以查看,之后代金券应该过期了) |
姓名:方朴 学号:102302115
分工内容:系统测试
1.功能测试:
用户界面测试:检查软件的用户界面是否直观易用,以及是否符合设计规范。

界面设计直观易用,完全符合预设设计规范,无布局错乱、文字溢出、图片加载异常等问题,导航清晰、按钮文案易懂,操作门槛低,用户可快速适配。

如图所示为用户中心,可以查看历史记录以及历史爬取评论的可视化
业务流程测试:模拟用户操作,确保业务流程中的每个步骤都能按预期执行。
用户可输入B站视频链接及视频类型(如“英雄联盟”“cosplay”等)。
系统自动爬取评论数据,结合大模型与视频类型进行智能分类。
输出分类结果,支持用户按类别筛选查看。
爬取时可播放BGM




从头到尾走了一遍核心操作流程:登录系统→输入 B 站视频链接→选择对应领域(比如英雄联盟、二创)→设置爬取数量→打开 BGM→点击爬取→等待分类→查看可视化结果→添加违禁词过滤,每一步都很顺畅。输入有效链接后,能完整爬取到评论,没有漏爬或者重复的情况;选择不同领域时,Qwen2.5 模型分类得很准,比如游戏视频里的争论类评论、二次元视频里的 @某人评论,都能正确归类;添加违禁词后,再看评论列表,对应的内容会被过滤标记;用户中心里还能看到历史爬取记录,点进去就能回看之前的分析结果,整个流程衔接很自然,没有卡壳的地方。
边界条件测试:测试软件在边界条件下的行为,例如输入的最大值和最小值。

输入无效链接时如图所示
针对输入无效链接的边界场景,系统均能精准识别并给出错误提示,无崩溃或无响应现象,边界处理逻辑严谨。
异常流程测试:测试软件在非正常流程下的表现,如网络断开、数据丢失等。

网络断开时的使用如图所示
模拟网络断开时的场景,系统能稳定响应,提供清晰的异常提示,重新恢复正常后可无缝接续操作,无数据丢失。
2.接口测试:接口测试的目的是确保所有软件接口能够正确返回数据,并且数据类型和结果符合预期。
API测试:测试软件提供的API接口,可以使用如Apifox等软件。

通过浏览器 F12 开发者工具 Network 面板抓取前端实际调用的接口,核心接口(爬取接口、分类接口、违禁词操作接口、可视化数据接口)均可正常响应。触发爬取操作后,接口能成功接收请求参数并返回爬取进度与结果数据;分类接口调用 Qwen2.5 大模型完成分类后,可返回完整的分类统计数据;违禁词操作接口支持增删查改全功能,数据同步无延迟;可视化接口能按需返回图表渲染所需的结构化数据,无连接超时、接口不存在等失败情况。
数据格式测试:验证返回数据的格式是否正确,如JSON、XML等。

所有 API 接口返回数据均采用 JSON 格式,符合预设标准。响应数据结构统一,无语法错误。所有返回字段完整,与前端渲染需求一一对应,无字段缺失或格式错乱。
参数测试:测试接口对不同参数的响应,包括有效参数和无效参数。

传入符合要求的参数(有效 B 站视频链接),接口返回成功状态码(200),响应结果与预期完全一致。
传入无效参数(非 B 站链接),接口能精准识别并返回明确错误提示,无崩溃或 500 错误。接口容错性良好。
错误和异常处理:确保软件能够妥善处理错误和异常情况,避免系统崩溃或数据丢失。
错误消息测试:测试软件在遇到错误时是否能够提供清晰、准确的错误消息。
系统在各类错误场景下均能提供清晰、准确、易懂的错误消息,无模糊提示或技术术语堆砌,所有错误消息均明确告知问题原因及解决方案,帮助用户快速定位并处理问题,符合用户使用习惯。
异常流程测试:模拟异常情况,输入非法数据,检查软件的响应。
模拟极端异常场景,系统处理逻辑合理,无崩溃或数据丢失:①输入非法数据:在爬取链接输入框填入 SQL 注入语句(如' or 1=1 --)、跨站脚本代码(如),系统自动过滤非法字符并提示 “输入内容包含非法字符,请规范输入”;②接口调用异常:故意修改接口路径触发 404 错误,返回{"code":404,"msg":"请求接口不存在"};③大模型处理异常:传入纯乱码评论数据,模型返回 “该评论无法识别,已归类为无意义”,无服务卡死
3.兼容性测试:在不同的设备、浏览器或操作系统上测试软件的兼容性,确保软件能够在各种环境下正常工作。
跨浏览器测试:在不同的浏览器上测试软件,如Chrome、Edge、Safari等。

Edge

Chrome

Safari
在 Chrome、Edge、Safari主流浏览器中测试,系统表现一致。各浏览器均能正常加载前端页面,无样式错乱、组件缺失问题;评论爬取、智能分类、违禁词操作、可视化分析等核心功能响应一致;可视化图表在不同浏览器中渲染效果统一,支持缩放、悬停查看详情等交互操作;背景音乐播放功能在各浏览器中均能正常触发与暂停,无兼容性异常。
跨设备测试:在不同的设备上测试软件,如PC、手机等。
iPhone17

一加ace2

在 PC 端(Windows/macOS 笔记本、台式机,在上述都已出现)、手机设备(iPhone 17、一加ace2)上测试,系统适配性良好。PC 端作为核心使用场景,所有功能流畅运行,可视化图表适配大屏展示,操作便捷;手机端虽能正常打开页面,但因屏幕尺寸限制,可视化图表查看体验稍弱,整体符合设计预期。
操作系统兼容性测试:在不同的操作系统上测试软件,如Windows、macOS、Linux等。

Linux系统
在 Windows 10/11、macOS、(二者在上述的操作中已经实现)Linux(Ubuntu)操作系统中测试,系统均能正常运行。Windows 系统下,爬取功能、背景音乐播放、可视化报告导出(Excel/PDF 格式)无异常;macOS 系统中,浏览器渲染、接口调用、MySQL 数据读写均稳定;Linux 系统下,华为云部署的 Flask 后端、Qwen2.5 大模型(4 位量化)运行正常,资源占用合理,无兼容性报错。不同系统下的文件编码、网络请求适配良好,无数据传输异常。
安全性测试:检查软件是否存在安全漏洞,如数据泄露、未授权访问等。
认证测试:测试软件的登录和认证机制是否安全。

系统后台管理功能(数据库配置、大模型参数调整)设置独立登录入口,采用 “账号 + 密码” 双重认证机制,有效防范弱密码风险。前端用户操作(爬取、查看分类结果、使用可视化功能)无需登录即可使用,核心配置功能的认证机制安全可靠,无未授权访问漏洞。
授权测试:测试软件的权限控制是否有效。
权限控制逻辑清晰,角色划分明确。普通用户仅能使用 “评论爬取、分类结果查看、可视化分析、违禁词添加 / 查询” 功能,无法访问后台管理模块(如修改数据库连接信息、调整大模型 LoRA 微调参数、删除系统日志);管理员账号拥有全权限操作,且所有权限操作均记录操作日志,便于追溯与审计。
数据加密测试:测试软件是否正确使用加密技术保护数据。

华为云服务器部署时开启防火墙与数据加密服务,并设置安全组,进一步强化数据存储安全。通过 F12 开发者工具抓取网络请求,未发现未加密的敏感数据,数据加密机制有效。
输入验证测试:测试软件是否能够防止SQL注入、跨站脚本攻击等。
针对所有用户输入场景进行安全验证,能有效抵御常见安全风险:①爬取链接输入框:过滤非法域名、跨站脚本代码,仅允许 B 站视频链接格式(含 “BV” 标识);②违禁词添加:过滤可能触发注入攻击的特殊字符,确保 MySQL 数据库操作安全;
心得体会
通过本次隐鼠系统的测试工作,让我对数据采集这门课有了更深刻的体悟。从功能、接口到兼容性、安全性,全维度的测试场景不仅需要细致严谨的态度,更要站在用户视角预判潜在问题 —— 比如边界条件下的无效链接处理、异常网络环境的接续操作,这些细节直接影响用户体验。过程中,通过与开发团队的高效协作,精准定位并反馈问题,看着系统在迭代中不断优化,深刻感受到测试工作对项目稳定落地的保障价值。很高兴能和小组的成员一起完成这次的实践,祝好!

浙公网安备 33010602011771号