程序聚合 软件案例 全端智能新闻聚合与网页快照归档平台

全端智能新闻聚合与网页快照归档平台

2026-03-09 21:09:51
行业:人工智能、生活服务
载体:鸿蒙应用、爬虫/脚本
技术:Spring Boot、Scrapy

业务和功能介绍

1、立项背景和目标:
在信息碎片化时代,用户面临新闻多端分散、优质内容易被404(链接失效)等痛点。本项目旨在打造一个跨平台(PC网页、iOS、HarmonyOS)的智能新闻聚合系统。核心目标是通过分布式爬虫实时抓取全网热点资讯,并利用无头浏览器技术对高价值新闻生成永久DOM快照和长图存档,确保信息资产的永久可访问性。
2、核心功能模块介绍:
分布式爬虫与清洗引擎: 针对不同新闻源定制抓取策略,利用自然语言处理(NLP)进行正文提取、去重和自动打标签。
网页快照与归档中台: 监听新闻入库事件,异步调度无头浏览器渲染目标页面,生成离线HTML快照和PDF/长图,存储至对象存储(OSS)。
多端统一分发API: 为HarmonyOS、iOS和PC Web提供统一的RESTful接口,支持基于ElasticSearch的亿级数据毫秒级全文检索。
智能推荐与订阅机制: 根据用户浏览画像,实现千人千面的新闻流推荐。
3、业务流程、功能路径描述:
数据生产链路: 调度中心下发任务 -> 爬虫节点抓取HTML -> 清洗服务提取标题/正文/时间 -> 触发快照异步任务 -> 存入MySQL并同步至ES索引。
C端用户访问链路(以鸿蒙端为例): 用户打开HarmonyOS App -> 发起首页Feed流请求 -> 后端网关鉴权 -> 推荐系统计算流数据 -> 返回资讯列表 -> 用户点击新闻 -> 优先加载本地/OSS的网页快照,实现秒开体验。

项目实现

1、整体架构和设计思路:
项目采用前后端分离与微服务化架构思想。前端采用 Vue3 构建 PC 管理后台与 Web 端,移动端使用 ArkTS 进行鸿蒙原生开发。后端核心业务基于 Spring Boot 构建,数据持久层采用 MySQL 分库分表,利用 Redis 缓存热点新闻与用户会话。全文检索与多条件聚合依赖 ElasticSearch 支撑。分布式爬虫使用 Python Scrapy 框架集群部署,并通过 RabbitMQ/Kafka 与 Java 主服务进行解耦与消息通信。
2、负责模块和结果:
我负责整个后端的架构设计、快照生成引擎以及鸿蒙端API接口的开发。
结果量化: 通过优化爬虫连接池与异步IO,使单节点日均新闻抓取量稳定在 20万+ 条,成功率达 98.5%。在快照生成模块,引入了多线程无头浏览器对象池(Browser Pool),将单张网页快照的生成时间从平均 4.5秒 压缩至 1.2秒,系统整体 QPS 提升了 300%。
3、遇到的难点、坑,和解决方案:
难点与坑: 在高并发抓取并生成快照时,Puppeteer (无头浏览器) 频繁发生内存泄漏(Memory Leak),导致服务器 OOM 宕机;同时部分动态新闻网站(SPA单页应用)存在复杂的反爬与异步加载机制,导致快照截取为空白。
解决方案: 1) 重构快照引擎: 放弃每次请求新建浏览器实例的做法,自主开发了一套基于池化技术的浏览器实例管理中间件,限制最大存活实例数,并设置定时销毁与健康度检查机制,彻底解决了 OOM 问题。
2) 动态渲染应对: 在快照截取脚本中注入自定义 JavaScript 探针,通过监听网络请求的 networkidle0 状态和特定的 DOM 节点渲染完成事件,结合动态代理 IP 池,成功攻克了复杂动态网页的完整快照抓取难题。

示例图片视频


老牛
30天前活跃
方向: 后端-C++、爬虫/脚本-爬虫/脚本、
交付率:100.00%
相似推荐
CPU机器人
本方案打造的生动数字人,硬件门槛极低:最低仅需 1 核 CPU、2GB 内存即可流畅运行,完全无需 GPU 加速,让普通办公电脑也能轻松承载。它凭借轻量高效的算法,在低配环境下依然能呈现鲜活自然的交互效果。同时支持 Windows 与 macOS 双平台,兼容广泛,便于用户跨系统使用。整体结构高度可移植,可快速部署到不同设备与场景,实现灵活迁移,是兼顾性能与成本的高性价比选择。
社交app
户外活动社交 APP 包含用户端与发布端两大端口。平台支持活动创建发布,可设置多场次供用户选择报名,接入微信、支付宝完成线上支付。内置社群 IM 聊天功能,方便参与者实时沟通;同时提供帖子动态、用户关注体系,搭配消息推送能力,及时通知报名、活动及互动信息。产品打通户外爱好者从查找活动、挑选场次、付费报名,到线上交流、内容分享、建立社交联系的完整闭环,一站式满足户外人群的活动参与与社交需求
博客个人作品-沫沫博客
一个已上线运行的内容博客平台,支持多用户注册、内容创作、分类管理与互动沉淀。项目由我独立设计、开发并部署上线,目前线上稳定运行,架构可直接复用于企业内容管理、社区、后台管理系统等场景。 【核心功能模块】 用户模块:注册、登录(JWT 无状态鉴权 + BCrypt 密码加密)、退出登录、个人中心(昵称与头像维护、修改密码、头像文件上传)。 内容模块:文章的发布、编辑、删除、分页浏览与详情查看;分类的增删改查;文章浏览量统计。 互动模块:评论(查看/发布/删除)、点赞、收藏,以及“我的文章”“我的收藏”列表。 系统支撑:统一响应格式与全局异常处理、登录失败锁定、接口限流、Swagger 在线接口文档。 【业务流程】 用户注册或登录后,由服务端签发 JWT 令牌,前端保存并随每次请求携带 → 在首页分页浏览文章列表、按分类筛选 → 进入详情页阅读(浏览量自动 +1,可点赞、收藏、评论)→ 在创作页撰写文章并选择分类发布 → 在个人中心管理自己的文章、收藏与账号资料。 【交付说明】 项目提供完整接口文档(Swagger / Apifox 可直接导入),配置按 dev/prod 多环境拆分,本地开发与线上部署互不干扰,支持替换 jar 包快速迭代上线,便于后续二次开发与长期维护。
语聊社交 APP
一款面向国内市场的语聊社交APP,包含IM通讯、语音房间、礼物打赏等核心功能。后端采用Java实现业务逻辑,后台管理系统基于Vue,投放与监控体系由Python独立开发。 我的职责: 负责整套服务器的日常运维、故障排查与容量规划,保障生产环境稳定运行 维护Java后端服务(Spring Boot) 维护Vue后台管理系统 维护Python投放监控脚本 维护jenkins的CI&CD
云音乐播放器-云音乐播放器
这是一款深度融合云技术的智能音乐播放器,它彻底打破了本地存储的限制。只需一个账号,你收藏的所有歌曲、创建的歌单以及播放记录都会实时同步到云端,让你在手机、电脑和平板间无缝切换,随时随地续播。它依托强大的算法,能根据你的听歌习惯精准推荐可能喜欢的冷门佳作或热门新歌。配合无损音质与沉浸式的界面设计,它不仅是播放工具,更是懂你品味的私人音乐管家
帮助文档   Copyright @ 2021-2024 程聚宝 | 浙ICP备2021014372号
人工客服