网络爬虫技术初识

帅比萌擦擦* 提交于 2020-03-11 13:50:48

爬虫基础

网络爬虫(又被称为网页蜘蛛,网络机器人),是一种按照一定的规则,自动的抓取万维网信息的程序或者脚本,是搜索引擎的重要组成。传统爬虫从一个或若干初始网页的URL开始,获得初始网页上的URL,在抓取网页的过程中,不断从当前页面上抽取新的URL放入队列,直到满足系统的一定停止条件。

1、 通用爬虫 :     通常指搜索引擎的爬虫(https://www.baidu.com)

2、 聚焦爬虫 :     针对特定网站的爬虫

robots协议

通用爬虫并不是万物皆可爬,它也需要遵守规则。 在网站根目录下robots.txt文件中会指明爬虫可爬取的网页,当然这只是一个君子协议,并不是所有爬虫都遵循,一般只有大型的搜索引擎的爬虫才遵守。 在网页head中增加mate标签也可以 <meta name="robots" content="noindex,nofollow" /> 例如:https://www.taobao.com/robots.txt

采集策略

 1. 深度优先遍历策略 (ABF CGHI DE)

2. 广度优先遍历策略 (ABCDE FG HI)

3. 大站优先策略  对于待抓取URL队列中的所有网页,根据所属的网站进行分类。对于待下载页面数多的网站,优先下载。这个策略也因此叫做大站优先策略。

清洗策略

 如何获取解析爬来的数据

1,json格式的数据jsckson,jsonObject

2,html格式xml格式Jsoup ,SAXReader,Dom4j

3,字符串正则匹配

滤重策略

1、布隆过滤器 2、基于Hash算法 3、基于MD5压缩映射 4、基于轻量级KVDB

反爬策略

1,设置请求头

如何设置请求头?

2,ip访问频率限制

nginx

3,输入验证码

4,要求登录&cookie验证

5,js渲染

可以将重要的内容写道js中,浏览器加载可以解析js,而爬虫不具备js代码执行能力

5,自定义字体

 

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!