新手教程 | 常见的爬虫类型有哪些?

news2024/12/1 0:46:21

程序猿圈流传着一个神话级别的事:全公司仅靠1个人,每年就能转上1400多万美元。听起来天方夜谭一样,那他是如何做到的呢?看报道就会发现,他利用的是爬虫技术。

随着互联网的发展,从海量的互联网数据中,爬取特定的数据用以分析,成为很多企业的基本需求,爬虫产业自然蓬勃发展,HTTP代理作为能有效助力爬虫获取数据的工具,也被人所熟知并运用,这样一来,我们就能使用大量的HTTP代理,进行爬虫作业,采用合理的爬虫策略,即可有效解决反爬问题。

而网络爬虫的抓取策略按照系统结构和实现技术,可以分为这4种:通用网络爬虫、聚焦网络爬虫、增量式网络爬虫、深层网络爬虫。

1.增量式网络爬虫

是指对已下载网页采取增量式更新和只爬行新产生的或者已经发生变化网页的爬虫,它能够在一定程度上保证所爬行的页面是尽可能新的页面。

和周期性爬行和刷新页面的网络爬虫相比,增量式爬虫只会在需要的时候爬行新产生或发生更新的页面,并不重新下载没有发生变化的页面,可有效减少数据下载量,及时更新已爬行的网页,减小时间和空间上的耗费,但是增加了爬行算法的复杂度和实现难度。 

2.通用网络爬虫

又称全网爬虫,主要为门户站点搜索引擎和大型 Web 服务提供商采集数据。

通用网络爬虫的爬行范围和数量巨大,对于爬行速度和存储空间要求较高,对于爬行页面的顺序要求相对较低,同时由于待刷新的页面太多,通常采用并行工作方式,但需要较长时间才能刷新一次页面,虽然存在一定缺陷,通用网络爬虫适用于为搜索引擎搜索广泛的主题,有较强的应用价值。

3.聚焦网络爬虫

又称主题网络爬虫,是指选择性地爬行那些与预先定义好的主题相关页面的网络爬虫。  和通用网络爬虫相比,聚焦爬虫只需要爬行与主题相关的页面,极大地节省了硬件和网络资源,保存的页面也由于数量少而更新快,还可以很好地满足一些特定人群对特定领域信息的需求。

聚焦网络爬虫和通用网络爬虫相比,增加了链接评价模块以及内容评价模块。

聚焦爬虫爬行策略实现的关键是评价页面内容和链接的重要性,不同的方法计算出的重要性不同,由此导致链接的访问顺序也不同。

4.Deep Web 爬虫

Web 按存在方式可以分为表层网页和深层网页。

表层网页是指传统搜索引擎可以索引的页面,以超链接可以到达的静态网页为主构成的 Web 页面。Deep Web  是那些大部分内容不能通过静态链接获取的、隐藏在搜索表单后的,即深层网页爬虫。只有用户提交一些关键词才能获得的 Web 页面,Deep Web  中可访问信息容量是表层网页的几百倍,是互联网上最大、发展最快的新型信息资源。

Deep Web 爬虫爬行过程中最重要部分就是表单填写,包含两种类型:

(1)基于领域知识的表单填写:此方法一般会维持一个本体库,通过语义分析来选取合适的关键词填写表单。 

(2)基于网页结构分析的表单填写: 此方法一般无领域知识或仅有有限的领域知识,将网页表单表示成 DOM 树,从中提取表单各字段值。

 

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

不可错过,Java程序员必备珍藏书单

不要因为迷茫,而停止了脚下的路。给大家推荐一份Java程序员必看的书单,豆瓣评分都挺不错的,往下看! 一、Java 基础篇书单 《Java编程思想》:从Java的基础语法到最高级特性(深入的面向对象概念、多线程、自…

煤矿智能化相关50项团体标准征求意见

智能化煤矿总体架构 原文地址:https://chinacs.scimall.org.cn/a3651.html 由煤矿智能化创新联盟等单位提出,中国煤炭学会归口,中煤科工集团常州研究院有限公司等单位起草的《煤矿通信接口与协议通用技术要求》50项团体标准已完成征求意见稿的…

用 Python 脚本实现电脑唤醒后自动拍照 截屏并发邮件通知

背景 背景是这样的, 我的家里台式机常年 休眠, 并配置了 Wake On Lan (WOL) 方便远程唤醒并使用. 但是我发现, 偶尔台式机会被其他情况唤醒, 这时候我并不知道, 结果白白运行了好几天, 浪费了很多电. 所以我的需求是这样的: 🤔 电脑唤醒后(可能是开机, 有可能是…

3款电脑必装软件,功能强大且免费,打死也舍不得卸载

闲话不多说,直接上狠货。 1、FlowUs息流 FlowUs息流是一款知识管理与协作平台,以云端笔记为载体,配合在线文档、知识库、文件夹等多形态功能,支持免费使用,极大提高个人与团队工作效率。支持多端同步使用,无…

STL空间配置器框架分析

目录 一、空间配置器概念 二、空间配置器的作用 三、内存池技术 四、空间配置器的实现原理 3.1 流程概述 3.2 一级空间配置器 3.3 二级空间配置器 3.3.1 二级空间配置器设计 3.3.2 内存碎片问题 一、空间配置器概念 即为各个容器高效的管理空间(空间的申请与回收)的。…

聊一聊双亲委派模式

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。 说起双亲委派模型,不得不说一下类加载器。 类加载器是什么? 当我们编译Java类时,JVM会创建与平台和…

Allegro174版本新功能介绍之移动画布不闪屏设置

Allegro174版本新功能介绍之移动画布不闪屏设置 Allegro在升级到174版本后,在移动画布的时候,视图数据量比较大的情况,会出现闪屏现象 Allegro在切换到Open GL模式下,这个现象会有所缓解,具体操作如下 选择Setup选择User-preferences

【Ansible】ansible 基础知识

ansible 文章目录ansible一、ansible Ad-Hoc 命令1.命令格式2.模块类型3.联机帮助4.常用模块4.1 command & shell 模块4.2 script 模块4.3 copy 模块4.4 yum_repository4.5 yum 模块4.6 systemd 模块4.7 group 模块4.8 user 模块4.9 file 模块4.10 cron 模块4.11 template …

SIE高级副总裁:关于PS VR2定价、设计、内容的思考

2023年2月22日,索尼将正式推出次世代头显PS VR2,首发VR游戏将超过30款,其中包括热门游戏《GT赛车7 VR》。此外,PS5全球销量也已突破3000万。实际上距离索尼推出上一代PS VR,已经过去了6年时间,相比于Quest等…

M12269 支持PD3.1等快充协议、140W升降压3-8节多串锂电充放电移动电源管理IC

引言 在快充技术持续迭代升级的过程中,充电从小功率向中大功率的转变是最为明显的。支持的快充功率从最初的7.5W,已经向最高240W迈进。PD3.1协议的推出,进一步助力快充加速走向中大功率。新增三种固定电压档:28V(100-1…

VS1053 MP3模块介绍

VS1053MP3模块简介ATK-VS1053 MP3 MODULE是ALIENTEK推出的一款高性能音频编解码模块,该模块采用VS1053B作为主芯片,支持:MP3/WMA/OGG/WAV/FLAC/MIDI/AAC等音频格式的解码,并支持:OGG/WAV音频格式的录音,支持…

Mask RCNN网络源码解读(Ⅱ) --- ResNet、ResNeXt网络结构、BN及迁移学习

目录 1.ResNet简介 2.residual结构和ResNet-34详解 2.1 residual结构 2.2 Batch Normalization 3.迁移学习 4.ResNeXt网络结构 1.ResNet简介 ResNet在2015年由微软实验室提出,斩获当年lmageNet竞赛中分类任务第一名,目标检测第一名。获得coco数据…

信道模型:Rayleigh、Rician、卫星→地面

这里写目录标题比较C. Loo模型:直射阴影,多径不阴影Corazza模型:直射和多径都阴影Lutz模型:好坏2个状态Rayleigh and Rician 信道生成Shadowed-Rician 直射径 散射径[Secure Transmission in Cognitive Satellite Terrestrial Net…

Redis的String类型,原来这么占内存

Redis的String类型,原来这么占内存 存一个 Long 类型这么占内存,Redis 的内存开销都花在哪儿了? 1、场景介绍 假设现在我们要开发一个图片存储系统,要求这个系统能够根据图片 ID 快速查找到图片存储对象 ID。图片 ID 和图片存储对…

【Flink基础】-- 源码中的注解

1.Flink自定义注解级别在升级 Flink版本至 1.15.3时,偶然遇到了一个异常,然后就准备详细了解下源码中的注解。设计注解的初衷:为了更好地进行代码和版本管理,Flink使用了Java的注解特性自定义了注解,对代码进行增强说明…

Kubernetes安全扫描之kubescape

一 背景 Kubescape 是第一个用于测试 Kubernetes 是否按照 NSA 和 CISA 的 Kubernetes 强化指南中定义的安全部署的工具 使用 Kubescape 测试集群或扫描单个 YAML 文件并将其集成到您的流程中。 二 特性 功能:提供多云 K8s 集群检测,包括风险分析、安…

stack 中缀表达式求值

【解法一】双栈思路梳理 【解法二】利用逆波兰表达式求解(中缀转后缀) 这个有俩种方法,一是直接根据条件进行各种情况的推导直接由中缀表达式求解, 二就是将中缀表达式转化为后缀表达式,利用更容易的逆波兰表达式求解…

分享微信小程序开发详细步骤

1、梳理小程序开发功能需求自己可以用思维导图写出自己想要开发的小程序里面,需要设置哪些功能,这些功能帮助我解决什么问题。然后把想法用文字形式在思维导图中写出来。如果不知道如果梳理,也可以找专业的产品经理协助处理。如果不知道功能可…

Vector - VT System - CANCANFDLIN板卡_VT6104|6204

对于做车载开发或者测试的朋友来说,大部分对于CANoe(VN1600系列)是相当的熟悉,我们知道CANoe支持CAN&CANFD&LIN,都有对应的硬件来匹配;但是如果需要做台架测试,VN1600系列的硬件放在架子…

读书笔记:来自一个外企优秀销售的业务心法和秘籍(中)

01 普通销售能达到的三种境界第一 投其所好 (110)销售把自己的资源1奉献出去,控制不了对方的回报,新人都处在这个阶段。第二 互利互惠 (1+1=1)大家互相贡献自己的一部分,…