从零开始打造一个新闻订阅APP之爬虫篇(一、背景介绍&需求分析)

本文从开发新闻订阅APP的背景出发,详细介绍了爬虫在该项目中的作用和重要性。作者讨论了通用搜索引擎爬虫的原理,并指出对于特定需求的爬虫,自定义更为合适。文章提出了抓取特定信息、存储与展现方式的问题,以及系统面临的主要问题和瓶颈,如网页结构解析、避免被目标站点屏蔽、系统稳定性、异常处理和监控。下篇将分享如何实现一个满足需求的简易爬虫系统。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这段时间,打算好好写写博客,希望将自己前段时间的开发经历梳理一遍,看看能不能沉淀一些东西,也希望能够和有共同兴趣的同学一起探讨学习。
有兴趣的同学可以看看前两篇文章:
“创业梦”的破碎
布板的前世今生
我开发的就是一个类似于Zaker和鲜果等新闻订阅服务的APP;接下来的一个系列,我都将是围绕这一个主题,按照一定的逻辑,介绍如何一步步地开发出一个新闻订阅APP。
首先,将会是第一部分:爬虫篇。
爬虫是我工作量最少,但是代码写的最有意思的一部分。
好了,言归正传,学习爬虫,不得不先提到通用搜索引擎的爬虫是如何工作的,先来看一张图:
这里写图片描述
注:nutch原理图
这大概是网上流传最广的一张关于爬虫的介绍图,左半部分即是爬虫的工作流程了。
它的工作步骤简单的概括大致分为以下几步:

  1. 指定需要搜索的页面集的url正则表达式;
  2. 注入urls种子,(通常是root url),并更新到待抓取集合中;
  3. 抓取当前待抓取集合中的urls所对应的页面;
  4. 解析抓取到的页面,包括: 提取超链接,去重,合并到待抓取集合中;
  5. 重复3,4两个步骤。直到集合为空或指定的抓取深度结束;

通用搜索引擎能不能用于特定的爬虫呢?我的理解是肯定能,但是用已有的开源爬虫去解决自己的需求有以下两方面的问题:
1、“杀鸡焉用牛刀”,通用的爬虫搜索面临的问题是如何抓取一个体量巨大的信息网,解析各种各样不同的web文档结构,而我只是需要去抓取一类特定的站点;
2、“牛刀”用来“杀鸡”,必须要对它进行改造,但改造这把牛刀的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值