Spider爬虫简介

为什么要做爬虫?

都说现在是"大数据时代",那数据从何而来?

企业产生的用户数据:

  • 百度指数 http://index.baidu.com/#/
  • TBI腾讯浏览指数 https://tbi.tencent.com/
  • 新浪微博指数 http://data.weibo.com/index?display=0&retcode=6102

数据平台购买数据:

  • 数据堂 http://www.datatang.com/about/about-us.html
  • 国云数据市场 http://www.moojnn.com/data-market/

政府/机构公开的数据:

  • 中华人民共和国国家统计局数据 http://data.stats.gov.cn/index.htm
  • 世界银行公开数据 https://data.worldbank.org.cn/
  • 纳斯达克 http://www.nasdaq.com/zh

数据管理咨询公司:

  • 麦肯锡 https://www.mckinsey.com.cn/
  • 埃森哲 https://www.accenture.com/cn-zh/
  • 艾瑞咨询 http://www.iresearch.com.cn/
  • 爬取网络数据:如果需要的数据市场上没有,或者不愿意购买,那么可以选择招/做一名爬虫工程师,自己动手丰衣足食。拉勾网Python爬虫职位


  • 通俗的讲: 就是模拟 客户端发起网络请求接收请求的响应,按照一定的规则,自动的抓取互联网信息的程序。
  • 原则上只要浏览器能够做的事情,爬虫都能够实现

百度百科:网络爬虫介绍 https://baike.baidu.com/item/网络爬虫


爬虫的基本原理:
  • 我们可以将互联网比喻为一张大网,网络爬虫我们想象为网上的蜘蛛,网页与网页之间的联系我们理解为节点,爬虫就相当于是访问网页,获取网页的信息,又通过节点可以爬取另一个网站,然后不停的通过一个个节点即访问一个个网页,这样网站的数据就可以被我们获取下来了。

爬虫的用途

  • 搜索引擎
  • 咨询新闻网站
  • 购物助手(慧慧购物)
  • 数据分析与研究积累原始数据资源
  • 抢票软件等
关于Python爬虫,我们需要学习掌握的知识有:
  1. Python基础语法学习(基础知识)
  2. HTML 前端知识
  3. 数据提取的持久化(文本、数据库)
  4. 爬虫(Spider)、反爬虫(Anti-Spider)、反反爬虫(Anti-Anti-Spider)之间的斗争....(header请求头,)
  5. Scrapy框架以及scrapy-redis分布式策略(第三方框架)

PHP

  • 2014年左右最火的语言,不过多线程支持不好,不适合做爬虫

JAVA

  • 生态完善,支持第三方库多,但是代码量大,不利于维护重构。是Python最大的竞争对手

C/C++

  • 底层语言,仅次于编绘语言。运行效率很高,学习成本高,代码量超大(底层模块自己写)。

Python

  • 代码简介,语法优美,支持大量第三方模块,支持多任务,有成熟的spider框架。



爬虫的分类

  • 根据使用场景,网络爬虫可分为 通用爬虫 和 聚焦爬虫 两种.
  • 通用爬虫

  • 通用网络爬虫 是 捜索引擎抓取系统(Baidu、Google、Yahoo等)的重要组成部分。主要目的是将互联网上的网页下载到本地,形成一个互联网内容的镜像备份 ,提取重要数据(做过滤,分词,去广告)。

通用搜索引擎(Search Engine)工作原理

  • 通用网络爬虫
  • 从互联网中搜集网页,采集信息,这些网页信息用于为搜索引擎建立索引从而提供支持,它决定着整个引擎系统的内容是否丰富,信息是否即时,因此其性能的优劣直接影响着搜索引擎的效果。
  • DNS:将域名转化为ip的技术


流程

第一步:抓取网页 搜索引擎网络爬虫的基本工作流程如下:
  • 1.首先选取一部分的种子URL,将这些URL放入待抓取URL队列;
  • 2.取出待抓取URL,解析DNS得到主机的IP,并将URL对应的网页下载下来,存储进已下载网页库中,并且将这些URL放进已抓取URL队列。
  • 3.分析已抓取URL队列中的URL,分析其中的其他URL,并且将URL放入待抓取URL队列,从而进入下一个循环....

搜索引擎的爬取url通过什么方式获得?

  • 通过网页外链
  • 通过链接提交
  • 各大搜索引擎公司与DNS服务商合作

Robots协议:(也叫爬虫协议、机器人协议等),全称是“网络爬虫排除标准”(Robots Exclusion Protocol),网站通过Robots协议告诉搜索引擎 哪些页面可以抓取,哪些页面不能抓取

缺点:
1,返回结果千篇一律,没有很好的针对性,不能对特殊的的用户群体返回对应的数据
2,需要遵循robot协议
3,搜索引擎通常获得文本,图像音频有困难


聚焦爬虫

根据需求产生,
只抓取与需求相关的数据。
我们更多会实现聚焦爬虫。


你可能感兴趣的:(Spider爬虫简介)