RELATEED CONSULTING
相关咨询
选择下列产品马上在线沟通
服务时间:9:00-21:00
当您遇到问题
关闭右侧工具栏
爬虫原理与数据抓取原理详解!
    发布时间:2022-08-29   访问量:14029

为什么要做爬虫?

首先,都说现在是“大数据时代”。数据从哪里来?


企业产生的用户数据:百度指数、阿里指数、TBI腾讯浏览指数、新浪微博指数


平台购买数据:数据大厅、郭云数据市场、贵阳大数据交易所。


政府/机构公布的数据:中华人民共和国国家统计局、世界银行、联合国和纳斯达克。


数据管理咨询公司:麦肯锡、埃森哲、艾瑞咨询。


爬网数据:如果所需数据市面上没有或者不愿意购买,可以选择招聘/做爬虫工程师,自己丰衣足食。挂钩Python爬虫位置


什么是网络爬虫?

网络爬虫(Web crawler,也称网络蜘蛛、网络机器人,在FOAF社区中,更常被称为web chaser)是一种按照一定规则自动抓取万维网信息的程序或脚本。其他不常用的名称有蚂蚁、自动索引、模拟器或蠕虫。


爬行动物的更多用途


2306抢票


网站上的第一张票


短信轰炸


关于Python网络爬虫我们需要了解的是:

Python基础语法学习(基础知识)

HTML页面的内容捕获(数据捕获)

从HTML页面提取数据(数据提取)

Scrapy框架和scrapy-redis分布式策略(第三方框架)

爬虫、反蜘蛛、反反蜘蛛之间的斗争…

通用爬虫和聚焦爬虫

根据使用场景,网络爬虫可以分为通用爬虫和聚焦爬虫。


通用爬行动物


通用网络爬虫是搜索引擎爬行系统(百度、谷歌、雅虎等)的重要组成部分。主要目的是将互联网上的网页下载到本地,形成互联网内容的镜像备份。


通用搜索引擎的工作原理


通用网络爬虫从因特网收集网页和信息。这些网页用于索引搜索引擎并提供支持。它决定了整个引擎系统的内容是否丰富,信息是否实时,所以它的性能直接影响搜索引擎的效果。


第一步:抓取网页


搜索引擎网络爬虫的基本工作流程如下:


首先选择一部分种子URL,将这些URL放入URL队列中进行抓取;


取出要爬取的URL,解析DNS得到主机的IP,下载URL对应的网页,存储在下载的网页数据库中,将这些URL放入爬取的URL队列中。


分析抓取的URL队列中的URL,分析其中的其他URL,将URL放入待抓取的URL队列,从而进入下一个循环…


爬虫原理与数据捕获

搜索引擎如何获得新网站的URL:


新网站主动向搜索引擎提交网址:(如百度http://zhanzhang.baidu.com/linksubmit/url)

在其他网站上建立新的网站链接(尽量在搜索引擎爬虫的抓取范围内)

搜索引擎和DNS解析服务提供商(如DNSPod等。)会配合,新网站域名会被快速抓取。

但是搜索引擎蜘蛛的抓取是有一定规则输入的,需要遵循一些命令或者文件的内容,比如标记为nofollow的链接,或者Robots协议。

Robots协议(也称为爬虫协议、机器人协议等。),全称是“Robots Exclusion Protocol”,网站通过Robots协议告诉搜索引擎哪些页面可以抓取,哪些页面不可以抓取,例如:


淘宝:https://www.taobao.com/robots.txt


腾讯网:http://www.qq.com/robots.txt


第二步:数据存储

搜索引擎通过爬虫爬取的网页将数据保存到原始页面数据库中。页面数据和用户浏览器获取的HTML完全一样。


搜索引擎蜘蛛在抓取页面时也会做一些重复内容检测。一旦他们在访问权重低的网站上遇到大量抄袭、收录或抄袭的内容,大概就不会再爬了。


第三步:预处理


搜索引擎会抓取爬虫返回的页面,并进行各种步骤的预处理。


选择文本


中文分词


消除噪音(如版权声明文本、导航栏、广告等...)


索引处理


链接计算


特殊文件处理



除了HTML文件,搜索引擎通常可以抓取和索引各种基于文本的文件类型,如PDF,Word,WPS,XLS,PPT和TXT文件。我们也经常在搜索结果中看到这些文件类型。


但是,搜索引擎不能处理图片、视频、Flash等非文本内容,也不能执行脚本和程序。


第四步:提供搜索服务和网站排名。


搜索引擎对信息进行组织和处理后,为用户提供关键词搜索服务,将与用户搜索相关的信息展示给用户。


同时,网站会根据页面的PageRank值(链接的访问量排名)进行排名,这样排名值高的网站在搜索结果中的排名就会靠前。当然也可以直接用钱买搜索引擎网站排名,简单粗暴。


爬虫原理与数据捕获

然而,这些通用搜索引擎也有一些局限性:


一般搜索引擎返回的结果都是网页,大多数情况下网页中90%的内容对用户都是无用的。


不同领域、不同背景的用户往往有不同的搜索目的和需求,搜索引擎无法为某一特定用户提供搜索结果。


随着万维网数据形式的丰富和网络技术的不断发展,出现了大量不同的数据,如图片、数据库、音频、视频和多媒体等。通用搜索引擎无力找到和获取这些文件。


一般的搜索引擎大多提供基于关键词的检索,难以支持基于语义信息的查询,无法准确理解用户的具体需求。


针对这些情况,聚焦爬虫技术得到了广泛的应用。


搜索引擎


聚焦爬虫是一种“面向特定主题需求”的网络爬虫。它与一般搜索引擎爬虫的区别在于,聚焦爬虫在抓取网页时会对内容进行处理和筛选,尽量保证只抓取与需求相关的网页信息。


而我们未来要学习的网络爬虫就是聚焦爬虫。


另一方面,如果你是一个网站管理员,不希望爬虫抓取自己的数据怎么办?答案是:去WAF!比如share waf(http://www.sharewaf.com)就可以实现很好的防爬!