🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
[TOC] ## 1. 爬虫种类 1.通用爬虫:搜索引擎用的爬虫系统。 > * 目标: 就是尽可能把互联网上所有的网页下载下来,放到本地服务器里形成备份, 再对这些网页做相关处理(提取关键字、去掉广告),最后提供一个用户检索接口。 例如:百度快照,即使资源被删了,也能查看 ![](https://box.kancloud.cn/3968ad8b45908fa386a88a0162971b2f_702x221.png) > * 抓取流程: a) 首选选取一部分已有的URL,把这些URL放到待爬取队列。 b) 从队列里取出这些URL,然后解析DNS得到主机IP,然后去这个IP对应的服务器里下载HTML页面,保存到搜索引擎的本地服务器。 之后把这个爬过的URL放入已爬取队列。 c) 分析这些网页内容,找出网页里其他的URL连接,继续执行第二步,直到爬取条件结束。 > * 搜索引擎如何获取一个新网站的URL: 1. 主动向搜索引擎提交网址:http://zhanzhang.baidu.com/linksubmit/url 2. 在其他网站里设置网站的外链。 3. 搜索引擎会和DNS服务商进行合作,可以快速收录新的网站。 DNS:就是把域名解析成IP的一种技术。 > * 通用爬虫并不是万物皆可爬,它也需要遵守规则: Robots协议:协议会指明通用爬虫可以爬取网页的权限。 Robots.txt 只是一个建议。并不是所有爬虫都遵守,一般只有大型的搜索引擎爬虫才会遵守。 咱们个人写的爬虫,就不管了。 > * 通用爬虫工作流程:爬取网页 - 存储数据 - 内容处理 - 提供检索/排名服务 > * 搜索引擎排名: 1. PageRank值:根据网站的流量(点击量/浏览量/人气)统计,流量越高,网站也越值钱,排名越靠前。 2. 竞价排名:谁给钱多,谁排名就高。 > * 通用爬虫的缺点: 1. 只能提供和文本相关的内容(HTML、Word、PDF)等等,但是不能提供多媒体文件(音乐、图片、视频)和二进制文件(程序、脚本)等等。 2. 提供的结果千篇一律,不能针对不同背景领域的人提供不同的搜索结果。 3. 不能理解人类语义上的检索。 为了解决这个问题,聚焦爬虫出现了: 2. 聚焦爬虫:爬虫程序员写的针对某种内容的爬虫。 > 面向主题爬虫,面向需求爬虫:会针对某种特定的内容去爬取信息,而且会保证信息和需求尽可能相关。