一文图解爬虫(spider)_spider详解-程序员宅基地

技术标签: 爬虫  架构设计  网页解析  spider  

—引导语

互联网(Internet)进化到今天,已然成为爬虫(Spider)编制的天下。从个体升级为组合、从组合联结为网络。因为有爬虫,我们可以更迅速地触达新鲜“网事”

在这里插入图片描述


那么爬虫究竟如何工作的呢?允许博主慢慢道来。

一、网络搜索算法
  • 深度搜索算法(DFS),座右铭:一路狂奔止南墙

定义:深度优先搜索属于图算法的一种,英文缩写为DFS(Depth First Search)。
特点:要达到被搜索结构的叶结点(即那些不包含任何超链的HTML文件)。]

  • 广度搜索算法(BFS),座右铭:相邻相杀何时了

定义:广度优先搜索也属于图算法的一种,英文缩写为BFS(Breath First Search)。
特点:从被搜索结构的一个节点出发,先遍历其相邻节点,再遍历相邻节点的相邻节点。

如果依然不甚理解,可以参考示意图:
在这里插入图片描述

二、制造爬虫

基于算法这个大脑,爬虫也就有了交通地图。这时耳边响起了一句儿歌:“红灯停,绿灯行 ,黄灯亮了等一等”
此时,爬虫开启了无敌模式,无畏无惧,不吃不喝也能日行三万里。
但是还是要听主人的话吧?欣慰至极。
爬虫架构
上图是一个经典的爬虫设计图,也就是各零部件的交互指导,下面进行简单阐述。

1. 客户端

也就是爬虫的出发地点,可以是主流的任何终端设备

2. URL队列

在产生一个URL队列前,先要指定一个“队长”,就好比丐帮的一代长老。如此便可以代代相传,从一个人变成一支队伍,直到夺取天下。

3. 网页解析器

好比淘金一样,我们需要经过严选才能找到自己想要的金子。数据即金子,解析器是那把铲子。

4. 网页下载器

可以理解为一个播种机,如何让一粒黄豆变成一串串豆角,需要我们辛勤的耕耘与浇灌。


结语

只要具备以上条件,一只爬虫即可问世,请允许它开始放肆的工作吧(手动狗头)。
各位伙伴熟悉了么?

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/splendid_java/article/details/134350385

智能推荐

springboot中,pom文件resources配置覆盖原有路径下已存在的文件_pom文件resource标签下的路径配置-程序员宅基地

文章浏览阅读1.1k次。如上两个resource节点中,第一个resource表示resources包下所有文件打进包中,第二个节点表示env目录下,根据打包指定的-P参数来选择env下的具体环境配置,把对应环境配置打包jar包中,但是如果env中的目录或者文件已存在于第一个resource节点的配置的resources中,则第二个resource节点需要配上<filtering>true</filtering>的标签,表示如果文件有重复,则以该节点下配置的文件为准,覆盖原有的文件......_pom文件resource标签下的路径配置

[渝粤教育] 西北工业大学 理论力学 参考 资料_关于ab杆的受力图,下列画法正确的是-程序员宅基地

文章浏览阅读4.4k次。教育-理论力学-章节资料考试资料-西北工业大学【】第一章测验1、【单选题】两个力,它们的大小相等、方向相反和作用线沿同一直线。这是A、它们作用在物体系统上,使之处于平衡的必要和充分条件;B、它们作用在刚体系统上,使之处于平衡的必要和充分条件;C、它们作用在刚体上,使之处于平衡的必要条件,但不是充分条件;D、它们作用在变形体上,使之处于平衡的必要条件,但不是充分条件。参考资料【 】2、【单选题】作用在同一刚体上的两个力F1和F2,若 F1 = -F2,则表明这两个力A、必处于平衡;_关于ab杆的受力图,下列画法正确的是

linux mysql 集群搭建_MySQL分布式集群搭建-程序员宅基地

文章浏览阅读998次。1、准备集群搭建环境使用6台虚拟机来搭建MySQL集群,相应的实验环境与对应的MYSQL节点之间的对应关系如下图所示:节点名称节点IP节点内存节点硬盘大小节点CPUMYSQL节点角色Ubuntu-1192.168.1.26768M20G30%管理节点(MGM)Ubuntu-2192.168.1.27768M10G30%数据节点(NDB)Ubuntu-3192.168.1.28768M10G30%数..._linux 搭建mysql集群

我的一点企业上云经验-程序员宅基地

文章浏览阅读1.2k次。作者按:日前,工信部印发《推动企业上云实施指南(2018—2020年)》,其中指出:到2020年,力争实现企业上云环境进一步优化,行业企业上云意识和积极性明显提高,上云比例和应用深度显著提升,云计算在企业生产、经营、管理中的应用广泛普及,全国新增上云企业100万家,形成典型标杆应用案例100个以上,形成一批有影响力、带动力的云平台和企业上云体验中心。统计数字表明,当前传统企业用户“上云”的比例仅为..._上云生产项目

信息化、数字化、数智化_数智化的英文-程序员宅基地

文章浏览阅读5.6k次。在提到企业转型时,经常出现信息化、数字化和智能化三个词,那么,到底什么是信息化、数字化和智能化呢?三者之间到底存在什么样的区别与联系呢?信息化信息化是指企业将自身的业务经营活动、人财物的管理过程等,通过各类信息系统的方式固化下来,以减少人工处理、方便企业的运营和决策。它可以使企业内各方面的人员清楚的了解到“业务状态是怎样的”,“流程走到了哪一步”等,从而有利于生产要素组合优化的决策,合理配置企业资源,增强企业的应变能力。总之,信息化就是将企业的日常业务流程以各种IT系统的形式固化下来,并自动做好记录_数智化的英文

QT带多选的下拉框MultiSelectComboBox_qt combobox设置多选下拉框-程序员宅基地

文章浏览阅读569次。带多选的下拉框QCombox_qt combobox设置多选下拉框

随便推点

Pycharm学生用户免费激活-程序员宅基地

文章浏览阅读1.3w次,点赞13次,收藏59次。Pycharm专业版_学生用户激活Pychram学生账户激活Free Educational Licenses填写申请人信息无法接受邮箱申请Pychram学生账户激活Free Educational LicensesFree Educational Licenses网址点击Apply now填写申请人信息填写个人信息,邮箱必须使用校园邮箱号,每个大学都有对应的邮箱帐号,可以去校园网自行申请点击申请免费产品无法接受邮箱申请如果出现无法接受电子邮件地址,点击蓝色的“官方文件”进行申请确认_pycharm学生

拓端tecdat|R语言:EM算法和高斯混合模型聚类的实现_r语言实现最大化聚类(em)算法中图形的绘制-程序员宅基地

文章浏览阅读436次。期望最大化(EM)算法是用于找到最大似然的或在统计模型参数,其中该模型依赖于未观察到的潜变量最大后验(MAP)估计的迭代方法。期望最大化(EM)可能是无监督学习最常用的算法。或者,如果我们有以厘米为单位的人的身高(男性和女性)的数据。高度遵循正常的分布,但男性(平均)比女性高,因此这表明两个高斯分布的混合模型。假设我们翻转硬币并得到以下内容 - 0,1,1,0,0,1,1,0,0,1。本文我们讨论期望最大化理论,应用和评估基于期望最大化的聚类。我们将使用mclust软件包附带的“糖尿病”数据。_r语言实现最大化聚类(em)算法中图形的绘制

Selenium的安装与卸载_卸载selenium-程序员宅基地

文章浏览阅读6.4k次,点赞3次,收藏5次。selenium _卸载selenium

Win10开启沙盒功能和使用_win10沙盒怎么共享电脑游戏-程序员宅基地

文章浏览阅读2.5k次。什么是沙盒?在计算机安全领域,(英语sandbox,又译为)是一种安全机制,为运行中的程序提供的隔离环境。通常是作为一些来源不可信、具破坏力或无法判定程序意图的程序提供实验之用。沙盒通常严格控制其中的程序所能访问的资源,比如,沙盒可以提供用后即回收的磁盘及内存空间。在沙盒中,网络访问、对真实系统的访问、对输入设备的读取通常被禁止或是严格限制。从这个角度来说,沙盒属于的一种。沙盒中的所有改动对操作系统不会造成任何损失。通常,这种技术被计算机技术人员广泛用于测试可能带毒的程序或是其他的恶意代码。..._win10沙盒怎么共享电脑游戏

pads 生成gerber时提示 “没有该尺寸的符号:0.8- 所使用的符号: +”_pads没有该尺寸的符号-程序员宅基地

文章浏览阅读9.1k次。pads 生成gerber时提示 “没有该尺寸的符号:0.8- 所使用的符号: +”,什么原因呢? 遇到这种情况怎么解决?还是忽略掉。 是因为我们使用的钻孔大小系统里面没有,就使用了系统里面自带的标号。 这个问题一般忽略他是没问题的。如果担心有问题,可以按照下面的方法解决他即可。 方法: 在File—>CAM中定义的各层中,选择drill drawing_pads没有该尺寸的符号

【话题】程序员的金三银四求职宝典-程序员宅基地

文章浏览阅读929次,点赞30次,收藏7次。对于程序员而言,金三银四的求职季确实是一个机遇与挑战并存的时期。

推荐文章

热门文章

相关标签